gpt4 book ai didi

mongodb - 使用其他字段值访问随机字段

转载 作者:行者123 更新时间:2023-12-04 04:02:26 30 4
gpt4 key购买 nike

我有这样一个文件:

{
value: "field2",
field1: [ ... ],
field2: [ ... ],
...
}

其中值将是文档中其中一个字段的值。一个文档可以有许多不同的字段。

我想匹配一个文档。只获取相关字段,然后他们对其进行一些计算。

例如我想做的:

{
$unwind: "$value"
}

并展开 field2 的结果。我该怎么做?

最佳答案

这有点“hacky”,但您可以使用像 $objectToArray 这样的运算符来实现它和 $filter像这样:

db.collection.aggregate([
{
$addFields: {
"values": {
$arrayElemAt: [
{
$filter: {
input: {
$objectToArray: "$$ROOT"
},
as: "field",
cond: {
$eq: [
"$$field.k",
"$value"
]
}
}
},
0
]
}
}
},
{
$unwind: "$values.v"
},
{
$replaceRoot: {
newRoot: "$values.v"
}
},

])

MongoPlayground

关于mongodb - 使用其他字段值访问随机字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62879758/

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