1
我有以下數據:如何查詢MongoDB中的空文檔子集合?
/* 1 */
{
"_id" : 1,
"FirstName" : "John",
"LastName" : "Doe",
"Test" : [{
"TestId" : ObjectId("5046109daedabb0cf8800f3f"),
"DateTaken" : ISODate("2012-09-10T15:46:32.866Z")
}, {
"TestId" : ObjectId("506e0928aedabb087c4ec9d1"),
"DateTaken" : ISODate("2011-06-26T18:05:52.625Z"),
"Responses" : [{
"AnswerId" : "506e0928aedabb087c4ec98c",
"QuestionId" : ObjectId("506e0928aedabb087c4ec98b"),
"ResponseDate" : ISODate("2011-06-26T04:00:00Z")
}]
}]
}
/* 2 */
{
"_id" : 2,
"FirstName" : "Jane",
"LastName" : "Doe",
"TestHistory" : [{
"TestId" : ObjectId("506e0928aedabb087c4ec9d1"),
"DateTaken" : ISODate("2011-06-26T18:05:52.625Z"),
"Responses" : [{
"AnswerId" : "506e0928aedabb087c4ec98c",
"QuestionId" : ObjectId("506e0928aedabb087c4ec98b"),
"ResponseDate" : ISODate("2011-06-26T04:00:00Z")
}]
}]
}
我試圖寫一個返回在存在測試有沒有迴應所有實例的查詢。我曾嘗試以下查詢:
- { 「Test.Responses」:{$存在:假}}
- {$和:[{測試:{$退出:真}},{「 Test.Responses「:{$存在:假}}]}
這兩者返回0的結果。我錯過了什麼?
可能的重複http://stackoverflow.com/questions/6607102/mongodb-match-non-empty-doc-in-array。請參閱http://stackoverflow.com/questions/6607102/mongodb-match-non-empty-doc-in-array#comment18700846_6838057 – 2013-03-05 19:06:42
中的註釋,與測試字段的非空值不同,「$ size」不使用索引 – Sammaye 2013-03-05 19:23:20