【发布时间】:2021-12-09 22:10:56
【问题描述】:
我有两个集合集合A的结构是
{
id:
product:
}
集合B的结构是
{
id:
product:
status:
}
我想更新集合 B 就像如果集合 A 中存在产品,那么它将状态 1 设置为集合 B 的相应文档。
SQL 语法类似于
UPDATE B SET B.STATUS = 1 WHERE B.PRODUCT IN (SELECT PRODUCT FROM A);
我只需要在 MongoDB 中做同样的事情。提前致谢。
【问题讨论】:
-
从 v4.2 开始,您无法在单个更新查询中访问其他集合。但是,您可以执行两个单独的读取和更新查询。
-
我在这些集合中有数百万个文档。它需要快速。我无法一一阅读和更新..还有其他建议吗? @thammada.ts
-
好的,我收回它,从 v4.2 开始,您可以按照@Joe 的建议使用 $merge
标签: mongodb