将每个数组元素的“索引”添加到元素本身

时间:2013-10-23 13:45:39

标签: mongodb aggregation-framework

使用聚合框架我想将数组中每个元素的索引添加到子文档本身。

在稍后的阶段我想$unwind元素,但是我需要myResults数组中的旧索引。

目前的结构:

{ myResults : [
    { foo: "bar"
    },
    { answer: 42
    }
]

目标结构:

{ myResults : [
    { index: 0,  // <-- this should be added
      foo: "bar"
    },
    { index: 1,  // <-- this should be added
      answer: 42
    }
]

注意:我不想更新元素, - 我只想在聚合管道的后期使用索引。

1 个答案:

答案 0 :(得分:3)

您需要在MongoDB Jira系统中对此问题进行投票:

Add option to $unwind to emit array index

它提供您要求的确切功能。它目前尚未安排在特定的未来版本中,但通常会受到需要量的影响。添加说明来解释您的用例并对其进行投票将影响其相对于other unscheduled aggregation framework tickets的优先级。