mongodb - 列出mongodb中某个字段的所有值

如何获得一个数组,其中包含集合中所有文档的某个字段的所有值?

db.collection:

{ "_id" : ObjectId("51a7dc7b2cacf40b79990be6"), "x" : 1 }
{ "_id" : ObjectId("51a7dc7b2cacf40b79990be7"), "x" : 2 }
{ "_id" : ObjectId("51a7dc7b2cacf40b79990be8"), "x" : 3 }
{ "_id" : ObjectId("51a7dc7b2cacf40b79990be9"), "x" : 4 }
{ "_id" : ObjectId("51a7dc7b2cacf40b79990bea"), "x" : 5 }

"db.collection.ListAllValuesForfield(x)" 结果:[1,2,3,4,5]

另外,如果这个字段是一个数组呢?

{ "_id" : ObjectId("51a7dc7b2cacf40b79990be6"), "y" : [1,2] }
{ "_id" : ObjectId("51a7dc7b2cacf40b79990be7"), "y" : [3,4] }
{ "_id" : ObjectId("51a7dc7b2cacf40b79990be8"), "y" : [5,6] }
{ "_id" : ObjectId("51a7dc7b2cacf40b79990be9"), "y" : [1,2] }
{ "_id" : ObjectId("51a7dc7b2cacf40b79990bea"), "y" : [3,4] }

"db.collection.ListAllValuesInArrayField(y)" 结果:[1,2,3,4,5,6,1,2,3,4]

另外,我可以让这个数组独一无二吗? [1,2,3,4,5,6]

最佳答案

db.collection.distinct('x')

应该为您提供该字段的唯一值数组。

https://stackoverflow.com/questions/23273123/

相关文章:

javascript - Mongoose 保存与插入与创建

shell - 为 MongoDB shell 设置默认数据库

javascript - 在 Node.js 中进行同步 MongoDB 查询的正确方法是什么?

mongodb - 在 MongoDB 中执行搜索/投影时如何重命名字段?

node.js - Nodejs 中的 Mongodb 与 Postgres

javascript - MongoDB分页的范围查询

codeigniter - 使用 MongoDB 从数组中删除特定项目

mongodb - 聚合框架中的 $skip 和 $limit

mongodb - 如何在 MongoDB shell 中中止正在运行的查询?

mongodb - 你如何告诉 Mongo 在限制结果之前对集合进行排序?