我有一个看起来像这样的文件:
{
"_id" : "AouRpb5g2WR9sZe5z",
"participants" : [
{
"user" : "CYvApwRFADveqBqEY",
"unread" : false
},
{
"user" : "sgoinZkaHbqth8nPr",
"unread" : false
}
],
"createdAt" : ISODate("2016-07-23T04:06:53.748Z")
}
我需要能够找到包含用户'CYvApwRFADveqBqEY'
和'sgoinZkaHbqth8nPr'
的文档。我能够找到其中一个用elemMatch
用户的所有文档,但无法解决这两个用户的问题,或者甚至是正确的方法。
答案 0 :(得分:1)
使用$all
进行find
查询,您可以执行以下操作:
db.device.find({
"participants.user": {
$all: ["CYvApwRFADveqBqEY", "sgoinZkaHbqth8nPr"]
}
});
来自$all
的文件:
$ all运算符选择字段值为>数组的文档,其中包含所有指定元素。