在此运行 完全在你的浏览器里运行,不上传、不登录
SQL 转 MongoDB
把 SELECT 语句转成 MongoDB find() 查询,浏览器内完成。
怎么用
- 把 SELECT 语句粘到左边。
- 转换器读取 SELECT 列表、FROM、WHERE、ORDER BY、LIMIT、OFFSET 子句。
- 右边给出等价的 MongoDB shell 调用:db.collection.find(filter[, projection]).sort().skip().limit()。
- 面板下方的说明行记录每一处调整 —— 比如 LIKE 变成了锚定正则。
- 把查询复制进 mongosh、Compass 或驱动代码。
常见用法
- 从 SQL 迁到 MongoDB —— 移植应用时,先把报表类查询翻译出来。
- 少手写 find() —— 粘一段团队都熟悉的 SQL,直接读 filter 文档。
- 核对过滤语义 —— 在定 schema 前,先看 SQL 运算符怎么映射到 $gt、$lt、$ne、$in、$regex。
- 统计行数 —— COUNT(*) 变成带同样 filter 的 countDocuments,不用另写一遍。
常见问题
问:遇到 JOIN、GROUP BY、HAVING 会怎样? 答:转换器会报错停下,指出子句名和原因:find() 不能连接、不能分组。这些操作属于聚合管道($lookup、$group、$match),错误信息会直说,而不是给一个悄悄返回错结果的查询。
问:LIKE 怎么翻译? 答:转成锚定 $regex:% 变 .*,_ 变 .,其余字符全部转义。部分数据库的 LIKE 不区分大小写而 MongoDB 正则默认区分,排序规则依赖大小写时,在 mongosh 里加上 i 选项。
问:AND / OR 优先级对吗? 答:对。AND 比 OR 结合更紧,括号也被尊重,过滤树与 SQL 分组一致。只要条件多于一个,输出就用显式 $and / $or 数组,结构一眼可查。
你的数据留在这台设备上
SQL 转 MongoDB 完全在本地运行。你粘贴或拖入的一切都由你自己的浏览器处理,不会被传走。我们的服务器不保存任何东西——关掉标签页就没了。
你输入的内容不会发往服务器、不被记录,也不用于分析统计。首次加载之后即使断网,这个页面照样能用。