我正在尝试返回某人未被邀请的活动。然而, 我的所有查询都返回数据。运行查询时不应返回任何内容。我错过了什么?
"__v" : 0,
"_id" : ObjectId("565cca79a9baa9b1522b57eb"),
"attendees" : [
{
"_id" : ObjectId("565cca79a9baa9b1522b57ec"),
"attendee" : ObjectId("557dfb4fc8c9ecbb07c2f98c"),
"statustext" : "Accepted",
"status" : 1
},
{
"attendee" : ObjectId("55dec11f38180102145d0060"),
"_id" : ObjectId("565f6bacdcbac0a6a354420c"),
"statustext" : "Pending",
"status" : 0
}
]
db.events.find({attendees:{$elemMatch:{attendee:{$ne:"55dec11f38180102145d0060"}}}}).
db.events.find({attendees:{$elemMatch:{attendee:{$ne:'55dec11f38180102145d0060'}}}})
db.events.find({attendees:{$elemMatch:{attendee:{$ne:ObjectId('55dec11f38180102145d0060')}}}})
答案 0 :(得分:2)
引用文档:
$ elemMatch运算符匹配包含数组字段的文档 至少有一个元素匹配所有指定的查询 标准。
这意味着$elemMatch
不适合这种情况。
db.events.find({"attendees.attendee":{$ne: ObjectId("55dec11f38180102145d0060")}})