我在这里要解决另一个问题。在阵列中思考有时可能非常具有挑战性。这就是我排队的内容。这就是我的数据: -
{
"_id": { "Firm": "ABC", "year": 2014 },
"Headings": [
{
"costHead": "MNF",
"amount": 500000
},
{
"costHead": "SLS",
"amount": 25000
},
{
"costHead": "OVRHD",
"amount": 100
}
]
}
{
"_id": { "Firm": "CDF", "year": 2015 },
"Headings": [
{
"costHead": "MNF",
"amount": 15000
},
{
"costHead": "SLS",
"amount": 100500
},
{
"costHead": "MNTNC",
"amount": 7500
}
]
}
如您所见,我有一个包含大量子文档的列表。 这就是我想要做的事情......我需要为此添加更多元素"标题"列表应该是: -
{
"costHead": "FxdCost",
"amount": "$Headings.amount (for costhead MFC) + $Headings.amount (for costhead OVRHD)"
}
我不确定如何制作上述内容。以下是一些挑战: -
我可以添加我想要添加的新子文档,但问题是addToSet只能在组阶段使用 - 这将是昂贵的(除非当然没有其他办法)。
< / LI>即使我使用addToSet,我总是要使用$运算符来引用我从JSON文件中读取的元素。现在我想在这里添加的元素(costHead:FxdCost)在我的JSON文件中不存在,因此我不能使用$运算符。
有没有人对如何解决这个问题有任何建议。这毕竟是基本的ETL。