查询Mongo中的地图元素数量

时间:2014-06-03 16:04:23

标签: mongodb

我可以根据列表中的元素数量查询Mongo集合中的所有文档,如下所示:

db.myCollection.find( { arrayField : { $size : 0 } } )

但这对地图不起作用。如何查询Map中的元素数量?

在Mongo中,这个2条记录的例子提供了更多关于我要问的信息。

{
   "_id" : 1,
   stringField : "someValue",
   arrayField : [ 1, 2, 3 ],
   mapField : {
       "key1" : "value1",
       "key2" : "value2"
   }
}
{
   "_id" : 2,
   stringField : "someValue2",
   arrayField : [ 4 ],
   mapField : {

   }
}

使用mapField有0个元素的事实检索上述集合中的所有文档的查询是什么?在上面的例子中,它应该返回id为2的记录。

1 个答案:

答案 0 :(得分:1)

mapField可以视为空文档。然后,您可以通过查询所有此类文档 db.collection.find({“mapField”:{}})