在MongoDB中结合find和$ group

时间:2019-02-19 03:14:28

标签: mongodb

我正在尝试完成此查询:

  db.cityinfo.find(
{$group: {_id: {state:"$state", city:"$city"}, 
total_pop: {$sum:"$pop"}}})

但是,出现错误“未知的顶级运算符:$ group”。是因为我试图在find函数中使用$ group函数,但不允许这样做吗?我正在尝试根据城市和州合并人口。

1 个答案:

答案 0 :(得分:1)

您正在尝试使用Aggregation Pipeline,而不是标准查询。

因此,语法为:

 db.cityinfo.aggregate([
{$group: {_id: {state:"$state", city:"$city"}, 
total_pop: {$sum:"$pop"}}}])