这里我试图检索文档中包含文档DummyFoo的文档,而文档DummyFoo又包含文档DummyBar?
据我所知,下面的语法是正确的,但没有返回结果,但我知道它们存在。我是否错误地构建了查询?
{ "DummyFoo" : { "$elemMatch" : { "DummyBar": { "$exists" : true } }}}
以下是我希望匹配的文档示例:
{
"_id" : ObjectId("5423d66ba077e6205cc9ecef"),
"Title" : "Test 1234587611",
"Subtitle" : "Test 1 Subtitle",
"DummyFoo" : {
"DummyDate" : "2014-09-25T09:46:35.6626303+01:00",
"DummyBar" : {
"Name" : "Test",
"Number" : 1
}
}
}
答案 0 :(得分:3)
$elemMatch专门用于查询数组。在这种情况下,你有一个嵌套的json,mongodb将其识别为embedded document。
您可以使用dot notation查询嵌入的文档。
{ "DummyFoo.DummyBar": { "$exists" : true }}