下面的代码
db.xxx.find(null,{name:1})
我想要从集合中返回所有名称,但结果包含没有字段'name'的文档,如下所示
{ "_id" : ObjectId("52b6574e55b3a4bd6cf89c62"), "name" : "xxx" }
{ "_id" : ObjectId("52b657ab55b3a4bd6cf89c63") }
如何删除这些。
db.xxx.find({name:{$exists:true}},{name:1});
可以工作,但我认为这个解决方案很难看。有更好的解决方案吗?
答案 0 :(得分:1)
我不确定您认为解决方案的哪个方面很难看,但如果您只想从文档中获取distinct
个不同的值,则可以使用name
:
db.xxx.distinct('name')