MongoDB $查找在另一个表格中,带有匹配字段作为数组
我试图返回其他集合中的数组中存在真正的基于错误的值。
假设我的活动收集如下。
{"_id":{"$oid":"626aa83ca3d690ffe4a40103"},"name":"event1","title":"Event 1"}
{"_id":{"$oid":"626aa83ca3d690ffe4a40104"},"name":"event2","title":"Event 2"}
{"_id":{"$oid":"626aa83ca3d690ffe4a40105"},"name":"event3","title":"Event 3"}
我的用户集合如下:
{"_id":{"$oid":"62149d30950b000a31448eb3"},"userName":"[email protected]","commentDictionary":"{}","__v":0,"createdAt":{"$date":"2022-02-22T08:22:08.161Z"},"updatedAt":{"$date":"2022-04-27T07:11:58.999Z"},"passwordResetLinkExpiryDate":{"$date":"2022-03-22T16:40:15.356Z"},"_eventIds":[{"$oid":"626aa83ca3d690ffe4a40103"},{"$oid":"626aa83ca3d690ffe4a40105"}]}
取决于 _Eventids
在用户集合中的匹配值,我正在寻找如下的输出。这也是在用户名中具有
{"_id":{"$oid":"626aa83ca3d690ffe4a40103"},"name":"event1","title":"Event 1", attended: true}
{"_id":{"$oid":"626aa83ca3d690ffe4a40104"},"name":"event2","title":"Event 2", attended: false}
{"_id":{"$oid":"626aa83ca3d690ffe4a40105"},"name":"event3","title":"Event 3", attended: true}
我正在尝试使用$查找,但是它需要一个匹配的密钥,但就我而言,它是数组。因此无法为此删除逻辑。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
查询
单个值/数组
上工作,并且如果数组包含此值,$ limit 1
is使用的,因为我们只关心是否找到匹配,结果是空的=> ACTENTED = false;否则参加= true
Query
single value/array
, and matches if the array contains this value$limit 1
is used, because we only care if match was found or notif results are empty => attented = false else attended=true
Playmongo