MongoDB按属性名称搜索具有该属性的任何文档

时间:2010-10-04 16:15:56

标签: mongodb

如何在MongoDB中搜索具有给定属性的任何文档?

我想要做的是找到所有具有该属性的文档而不管它的值是什么,我似乎无法做到这一点。我试过以下

db.collection.find({"property", null}); //Finds things that don't have that property
db.collection.find({"proprety", {}}); //Doesn't find anything unless something has the empty object as the value

实际上是否存在这种语法,还是需要进行mapreduce操作?

2 个答案:

答案 0 :(得分:6)

只需反转查询并搜索属性不为null的文档($ ne not equals)

db.collection.find( { property : { $ne : null } } );

答案 1 :(得分:6)

以下是使用$ exists的示例答案:

db.collection.find( { property : { $exists: true } } );