我有以下数据需要在mongo中将2d数组转换为1d数组。 以下是我的收藏集
_id: "2018-08-26",
extra_employee_data: [
[
{
employee_id: 0,
total_payable: 200,
payment_id: 1
},
{
employee_id: 1,
total_payable: 500,
payment_id: 2
}
],
[
{
employee_id: 0,
total_payable: 100,
payment_id: 1
}
]
],
在我想要的输出中,extra_employee_data
的所有数据都应该放在单个数组中
例如:
_id: "2018-08-26",
extra_employee_data: [
[
{
employee_id: 0,
total_payable: 100,
payment_id: 1
}
],
[
{
employee_id: 0,
total_payable: 200,
payment_id: 1
}
],
[
{
employee_id: 1,
total_payable: 500,
payment_id: 2
}
]
]
我曾经尝试过$ split和$ reduce,但是到目前为止还没有运气。
到目前为止,我已经尝试过了
extra_data1'=> [
'$map'=> [
'input'=> '$extra_employee_data',
'as'=> 'exd',
'in'=> [
'employee_id'=> ['$arrayElemAt'=> [ '$$exd.employee_id', 0 ] ],
'payment_type'=> ['$arrayElemAt'=> [ '$$exd.payment_id', 0 ] ],
'amount'=> ['$arrayElemAt'=> [ '$$exd.total_payable', 0 ] ]
]
]
],