繁体   English   中英

如何基于MongoDB中的ID从多个集合中删除文档?

[英]How to remove documents from multiple collections based on ID in MongoDB?

我有两个收藏; 架构如下-

posts
 - ID
 - author
 - title
 - content

user_posts
 - ID
 - post_id
 - user_id

在SQL中,我可以一次从两个表中删除一个条目,例如

DELETE posts, user_posts
FROM posts
INNER JOIN user_posts
ON posts.ID = user_posts.post_id
WHERE posts.ID = 102

如何为Mongodb实现以上类似代码? 我知道如何从单个集合中删除条目。 一种解决方案是使用回调函数一个接一个地执行删除操作,以确保操作成功,但是我想一次从两个集合删除文档。

使用流星介绍了该解决方案,但我对Mongo还是很陌生,所以我无法理解。 尽管此解决方案适用于当前数据库中存在的所有集合 ,但我只有与该操作相关的这两个集合,而其他则不相关。 任何帮助将不胜感激。

目前,这根本不可能。 为了访问两个集合,您必须使用聚合框架,但是该框架在此阶段无法执行任何数据操作。 另外,“一次”要求将需要对交易的支持,而该交易目前仅在beta版本中可用-再次不幸。

底线是:建议的回调方法是正确的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM