[英]How to make a mongo query to find all documents where an array contains a given id?
我不确定我做错了什么。 我有一个用户集合,其中有一个字段“followingUsers”(数组)。 该数组包含其他用户的 ID。 当用户被删除时,我希望每个其他用户文档不再在其 followUsers 数组中引用已删除的用户。 我对 mongo 没有经验,所以我决定先进行查找查询,但每次尝试都会返回一个空结果。
我写了以下查询,但似乎都不起作用:
db.users.find({"followingUsers": "63d0522c655fa263cfe003e7"})
db.users.find({"followingUsers": {"$all": ["63d0522c655fa263cfe003e7"] } } )
在图像中你可以看到我希望得到的数据: Data i expect to get back
我究竟做错了什么?
在昵称 ray 的用户的帮助下,我找到了正确的查询:
db.users.find( {'followingUsers': ObjectId("63cff74e3ae933124ee20d05")} )
db.users.find( {'followingUsers': {"$all":[ ObjectId("63cff74e3ae933124ee20d05") ] }} )
我确实将 ObjectId 存储在数组中,而不仅仅是字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.