我正在创建一个洞察仪表板,我有一些很多数据和存储计数,但我需要在一个文档中合并。 (嗯很难用语言解释),例如。
网站集:
{
Name: "..."
ApiKey: "SomeUnique1"
Insights:
{
sumOfData: 5,
anotherSum: 14
}
},
{
Name: "..."
ApiKey: "SomeUnique2"
Insights:
{
sumOfData: 5,
anotherSum: 1
}
},...
我想检索下一个下列数据:
{
ChartDashboard: "Usage"
Insights:
{
sumOfData: 10,
anotherSum: 15
}
}
我读到$和运算符可以检索一些ApiKey的属性,但MongoDB有任何运算符来实现这个吗?
答案 0 :(得分:1)
您可以使用聚合框架。一个例子如下:
db.collection.aggregate([
{ '$group':
{
_id:null,
'ChartDashboard':'Usage',
'sumOfData':{$sum:'$Insights.sumOfData'},
'anotherSum':{$sum:'$Insights.sumOfData'}
}
}
])
,结果将是:
{
'_id' : null,
'ChartDashboard' : 'Usage',
'sumOfData' : 10,
'anotherSum' : 15
}