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

标签 mongodb mongodb-query database

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

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')

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

关于mongodb - 列出mongodb中某个字段的所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23273123/

相关文章:

php - x 时间后递增 PHP 变量

sql-server - 您将如何设计数据库以允许用户定义的模式

mongodb - 如何在 Kubernetes 上创建 MongoDB 集群?

mongodb - 使用 mongo-go-driver 创建动态过滤器

MongoDB 不同的聚合结果

python - MongoDB 推送到嵌套数组或插入新文档

MongoDB 显示一对多关系中的子项目

mongodb - 对象数组与对象上的 Mongo 索引

node.js - 如何将这两个单独的聚合查询合并为一个查询?

sql - mercurial 或 git 的关系数据库后端