【发布时间】:2020-07-20 12:52:16
【问题描述】:
那个 mysql 查询的 mongoDB 查询是什么?如何在 mongoDB 中使用 join 有我在 mysql 中编写时面临的问题?
SELECT t.uid, count(j.job_id) AS x
FROM verify AS t
LEFT JOIN jobs AS j
ON t.uid = j.job_id
【问题讨论】:
-
您可能会通过聚合管道及其
$lookup运算符实现一些接近的目标。但是,一般来说,join 和复杂的报告并不是 mongodb 的强项。 -
如果
uid=job_id和one-to-one关系,则问题不正确,那么为什么要加入并获得计数?为什么不简单地计数? -
在 no-sql 世界中没有连接,因为大部分时间数据都保存在同一个文档中(json、bson 对象)。即使它们分开保存 - 取决于 db ODM,也有
populate(或类似的)方法 -
这基本上是说,请不要问“如何转换我的SQL”。因为您应该做的是“重组”您实际存储的数据。如果您只是要复制完全相同的表结构,那么从 RDBMS 迁移到 MongoDB 是没有意义的。
-
显示this link并查看SQL代码和mongoDB代码中的场景