希望mongodb找到操作返回特定字段,但返回没有此字段的文档

时间:2013-12-22 03:35:08

标签: mongodb

下面的代码

db.xxx.find(null,{name:1})

我想要从集合中返回所有名称,但结果包含没有字段'name'的文档,如下所示

{ "_id" : ObjectId("52b6574e55b3a4bd6cf89c62"), "name" : "xxx" }
{ "_id" : ObjectId("52b657ab55b3a4bd6cf89c63") }

如何删除这些。


db.xxx.find({name:{$exists:true}},{name:1});

可以工作,但我认为这个解决方案很难看。有更好的解决方案吗?


来自@JohnnyHK的评论很有用:“查询参数确定包含哪些文档,投影参数确定每个文档中包含的内容”

1 个答案:

答案 0 :(得分:1)

我不确定您认为解决方案的哪个方面很难看,但如果您只想从文档中获取distinct个不同的值,则可以使用name

db.xxx.distinct('name')