gpt4 book ai didi

mongodb - 在 Mongodb 的嵌套 map 对象模式中选择特定字段

转载 作者:可可西里 更新时间:2023-11-01 09:47:31 24 4
gpt4 key购买 nike

例如:- 以下是集合“俱乐部”中的示例文档,

示例文档

{
"_id" : ObjectId("5cb8218ce2911e7c707e27fa"),
"name" : "name 1",
"members" : {
"user_1" : {
"created" : ISODate("2019-04-18T07:04:44.748Z"),
"lastActive" : 1555584757282,
"state" : 1,
"unreadMessages" : 0,
"userId" : "user_1_id"
},
"user_2" : {
"lastActive" : 1555588409686,
"state" : 1,
"unreadMessages" : 0,
"userId" : "user_2_id"
}
}
}

Mongo DB 查询应该返回以下字段:-

期望的输出-

{
{
"_id" : ObjectId("5cb8218ce2911e7c707e27fa"),
"name" : "name 1",
"members" : {
"user_1" : {
"lastActive" : 1555584757282
},
"user_2" : {
"lastActive" : 1555588409686
}
}
}
}

最佳答案

您可以使用以下聚合

db.collection.aggregate([
{ "$addFields": {
"members": {
"$arrayToObject": {
"$map": {
"input": { "$objectToArray": "$members" },
"in": {
"k": "$$this.k",
"v": { "lastActive": "$$this.v.lastActive" }
}
}
}
}
}}
])

Example

关于mongodb - 在 Mongodb 的嵌套 map 对象模式中选择特定字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55747752/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com