我试图使用mongodb管道来获得电站超过100的所有状态" EV Level2 EVSE Num"并列出Level2充电器的状态缩写和计数。
一份文件包含一个电站,每个州都有许多文件,而且收集存储了美国每个州的电台。
我已尝试对$ _id.totlv2和$ totlv2进行操作,但我对此感到失望,并且无法理解文档,以便在管道中充分利用$ gt。如何过滤少于100的状态" EV Level2 EVSE Num"?
查询:
db.altfuel.aggregate(
{$match:{"Groups With Access Code": "Public"}},
{$group:{ _id: "$State", totl2:{$sum: "$EV Level2 EVSE Num"}},
{$sort:{"totl2":-1}}})
关联文档密钥:
{
"_id" : ObjectId("57aa01d7f551936b0cbe9d56"),
"State" : "UT",
"Plus4" : "",
"Groups With Access Code" : "Public",
"EV Level1 EVSE Num" : "",
"EV Level2 EVSE Num" : 4,
"EV DC Fast Count" : "",
}
答案 0 :(得分:0)
你可以在小组赛阶段之后再做一场$ match,你的聚合将如下所示:
db.altfuel.aggregate(
{$match:{"Groups With Access Code": "Public"}},
{$group:{ _id: "$State", totl2:{$sum: "$EV Level2 EVSE Num"}}},
{$match: {"totl2": {$gte: 100}}},
{$sort:{"totl2":-1}})
你似乎也错放了一些花括号,我在答案中包含了正确的方法。