我正在try 编写一个Mongo查询,以帮助从数据中生成报告.
这些文件看起来像这样:
[{
"DeviceType" : "A",
"DeviceStatus" : "On"
},
{
"Device Type" : "B",
"Device Status" : "On"
},
{
"DeviceType" : "A",
"DeviceStatus" : "Off"
},
{
"DeviceType" : "A",
"DeviceStatus" : "On"
}]
DeviceType
字段可以接受任何字符串值,DeviceStatus
字段可以是On
、Off
或InRepair
中的任何一个.我想编写一个mongo查询,显示每个设备的DeviceStatus
个计数.结果应该是这样的:
[{
"DeviceType" : "A",
"DeviceStatusOnCount" : "15",
"DeviceStatusOffCount" : "13",
"DeviceStatusInRepairCount" : "12",
},
{
"DeviceType" : "B",
"DeviceStatusOnCount" : "6",
"DeviceStatusOffCount" : "14",
"DeviceStatusInRepairCount" : "2",
}]
我如何在Mongo中实现这一点?
我当前的查询只能按DeviceType
进行分组:
db.Collection_Name.aggregate([
{ $group: { _id: "$DeviceType", count: { $sum: 1 } } }
])