当我执行以下查询时
db.mycollection.aggregate({$sample: {size: 2}}, {$project: {"_id": 1,"text": 1}})
我得到以下输出
"_id" : "123", "text" : "some writing"
"_id" : "456", "text" : "some more writing"
我正在寻找我的输出是这样的
"123", "some writing"
"456", "some more writing"
问题:
有没有办法在没有关联键的情况下输出值"123"
和"some writing"
)? ("_id":
和"text":
)
答案 0 :(得分:0)
db.mycollection.aggregate({$sample: {size: 2}},{$project: { myArray: [ "$id", "$text" ]}})
将完成这项工作
您可以在此处阅读更多内容:https://docs.mongodb.com/v3.2/reference/operator/aggregation/project/#example-project-new-array-fields
更新1 :更新了语法
答案 1 :(得分:0)
我认为这是使用本机MongoDB查询语法不可能的。有关如何使用JavaScript完成此操作的示例,请查看以下StackOverflow帖子:How to return only value of a field in mongodb