⌘K でツールを切替
FORMAT & CONVERT
SQL → MongoDBクエリ変換ツール
SQLクエリをMongoDBクエリ構文に変換します。
sql-mongo
§01 このツールについて
概要
リレーショナルDBとMongoDBの構文を行き来する開発者向けの変換ツールです。
シンプルな SELECT 文をパースし、等価な db.collection.find() 呼び出しを
生成します。カラムリストはprojectionに、WHERE はフィルタドキュメントに、
ORDER BY は .sort()(DESC は -1)に、LIMIT は .limit() に対応します。
使い方
- SQL SELECT 欄にクエリを入力または貼り付けます。
- 入力と同時に更新される MongoDB 出力から変換結果を確認します。
使用例
SELECT name, age FROM users WHERE age > 18 ORDER BY name LIMIT 10→db.users.find({"age":{"$gt":18}}, {"name":1,"age":1}).sort({"name":1}).limit(10)SELECT * FROM orders WHERE status = 'paid'→db.orders.find({"status":"paid"})
注意事項
対応するのは基本的なクエリ形のみで、完全なSQLパーサーではありません。
複数の WHERE 条件は AND の意味(MongoDBの暗黙の論理積)で結合されます。
文字列値はシングル・ダブルどちらのクォートも可能で、クォートなしの値は数値として
扱われます。変換結果は実データで検証してから利用してください。
FAQ
クエリはサーバーに送信されますか?
いいえ。SQLのパースと変換はすべてブラウザ内で行われ、外部への送信は一切ありません。実際のテーブル名やフィールド名を含むクエリも安心して使えます。
どのSQL文に対応していますか?
SELECT ... FROM ... [WHERE] [ORDER BY] [LIMIT] 形式の単一SELECT文のみです。WHERE条件はANDで結合する必要があり、OR・JOIN・GROUP BY・サブクエリ・IN・LIKEには対応していません。
比較演算子はどう変換されますか?
等号は値の直接マッチになり、>・<・>=・<=・!=(または<>)はそれぞれ $gt・$lt・$gte・$lte・$ne に変換されます。