本文へスキップ
ここで実行 100% ブラウザ内で動作します。アップロードもログインも不要です。

SQL to MongoDB

SELECT 文を MongoDB の find() クエリに変換します。

使い方

  1. 左欄に SELECT 文を貼り付けます。
  2. 変換器は SELECT リスト、FROM、WHERE、ORDER BY、LIMIT、OFFSET の各節を読み取ります。
  3. 右側に等価な MongoDB シェル呼び出しが表示されます:db.collection.find(filter[, projection]).sort().skip().limit()。
  4. パネル下の注記行で各調整を確認できます —— LIKE がアンカー付き正規表現になったなど。
  5. クエリを mongosh、Compass、ドライバのコードにコピーします。

よくある用途

よくある質問

Q: JOIN、GROUP BY、HAVING があると? A: 変換器はエラーで停止し、節の名前と理由を示します。find() は結合もグループ化もできません。これらの操作は集約パイプライン($lookup、$group、$match)に属し、誤った結果を返すクエリを出すのではなく、その旨をエラーメッセージで伝えます。

Q: LIKE はどう変換されますか? A: アンカー付き $regex に変換されます。% は .*、_ は . になり、他の文字はすべてエスケープされます。SQL の LIKE がエンジンによって大文字小文字を区別しないのに対し、MongoDB の正規表現は既定で区別するため、照順序が大文字小文字に依存する場合は mongosh で i オプションを追加してください。

Q: AND と OR の優先順位は正しいですか? A: 正しいです。AND は OR より強く結合し、括弧も尊重されるため、フィルタの木構造は SQL のグループ化と一致します。条件が複数ある場合は常に明示的な $and / $or 配列で出力されるので、構造がそのまま読み取れます。

データはこのデバイス内にとどまります

SQL to MongoDB は 100% ローカルで動作します。貼り付けたり、ドロップしたデータはすべてお使いのブラウザ内で処理され、送信されることはありません。当社のサーバーには何も保存されません——タブを閉じればすべて消えます。

入力された内容がサーバーへ送信・記録・解析利用されることはありません。初回読み込み後はネットワークを切断していてもこのページは動作します。