我可以从Mongo聚合中获得嵌套数组的结果:
如何修改查询以便将嵌套数组合并为单个数组,其中只包含对象项? 更新:为了提供更完整的基本文档视图。抱歉之前没有提供。 更新2:我是一个糟糕的问题提问者,我的<>子文档失败了,因为data下的值不是对象,而是仅持有一个对象的数组。我正在尝试弄清楚如何提取该对象,这时答案将会起作用。
"vals": [
[ [ { "reference_date": "2013-09-01", "price": 79 },
{ "reference_date": "2013-09-02", "price": 69 },
{ "reference_date": "2013-09-03", "price": 101 }, ] ],
[ [ { "reference_date": "2013-08-01", "price": 101 },
{ "reference_date": "2013-08-02", "price": 106 },
{ "reference_date": "2013-08-03", "price": 101 }, ] ],
[ [ { "reference_date": "2013-07-01", "price": 129 },
{ "reference_date": "2013-07-02", "price": 163 },
{ "reference_date": "2013-07-03", "price": 192 }, ] ],
我正在使用这个查询语句:
coll.aggregate([
{ $match: { 'account_id': '123', }, },
{ $group: {
_id: { 'account': '$account_id' },
vals: { $push: '$data.prices' } }, },
]);
我的基础文档如下:
{'account_id': '123',
. . . other stuff . . .
'data': [{
'prices': [
{ "reference_date": "2013-08-01", "price": 101 },
{ "reference_date": "2013-08-02", "price": 106 },
{ "reference_date": "2013-08-03", "price": 101 },
],
. . . other stuff under data key . . .
}]
如何修改查询以便将嵌套数组合并为单个数组,其中只包含对象项? 更新:为了提供更完整的基本文档视图。抱歉之前没有提供。 更新2:我是一个糟糕的问题提问者,我的<>子文档失败了,因为data下的值不是对象,而是仅持有一个对象的数组。我正在尝试弄清楚如何提取该对象,这时答案将会起作用。
[[obj1,obj2,obj3]],[[obj4,obj5,obj6]],...
您的数组是否实际上像这样双重包装,还是这只是一个打字错误? - 3rf