【发布时间】:2020-12-16 20:46:37
【问题描述】:
我想在 Mongo 中查询我的数据库,然后能够复制并粘贴查询返回的 id 列表。
我知道我可以投射_id 喜欢
db.getCollection('mymodel').find({}}, { _id: 1 })
但我希望能够将结果复制并粘贴为 id 数组,有没有办法使用 Robomongo/Mongo 实现这一点?
【问题讨论】:
我想在 Mongo 中查询我的数据库,然后能够复制并粘贴查询返回的 id 列表。
我知道我可以投射_id 喜欢
db.getCollection('mymodel').find({}}, { _id: 1 })
但我希望能够将结果复制并粘贴为 id 数组,有没有办法使用 Robomongo/Mongo 实现这一点?
【问题讨论】:
你想要this查询吗?
使用aggregate 将所有_ids 添加到一个集合中:
db.collection.aggregate([
{
"$group": { "_id": null, "ids": { "$addToSet": "$_id" } }
},
{
"$project": { "_id": 0 }
}
])
并且输出与此类似,一个名为ids 的数组,所有id:
"ids": [
ObjectId("5a934e000102030405000000"),
ObjectId("5a934e000102030405000004"),
ObjectId("5a934e000102030405000001"),
ObjectId("5a934e000102030405000005"),
ObjectId("5a934e000102030405000003"),
ObjectId("5a934e000102030405000002")
]
您可以使用$match 过滤您想要获取id 的文档,例如this 示例。
【讨论】: