在根目录mongodb上获取对象

时间:2019-04-14 16:25:40

标签: mongodb mongodb-query aggregation-framework

文档:

{"_id":"5cb0dfe234a8a30c9c0af127",
"sensors":
[{"value0":0.153,
"value1":-0.306,
"value2":9.807}],
"timestamp":1555095522489,"__v":0}

我想获取4个字段(时间戳和值0..2),而没有任何数组/对象。 展开仅针对数组,而不针对对象。我该怎么办?

所需的输出:

{timestamp":1555095522489,
value0":0.153,
value1":-0.306,
value2":9.807}

1 个答案:

答案 0 :(得分:3)

使用$unwind$replaceRoot聚合运算符

db.collection.aggregate([   
  { "$unwind": "$sensors" },
  { "$replaceRoot": { "newRoot": { "$mergeObjects": ["$sensors", { "timestamp": "$timestamp" }] }}} 
])