Mongodb 如何根据分类变量查找记录数的最大值

Mongodb 如何根据分类变量查找记录数的最大值,mongodb,Mongodb,我想找到乘坐次数最多的起点站,但我不确定如何找到,因为起点站名称不是数字字段。单个文档看起来像 { "_id" : ObjectId("572bb8222b288919b68abf86"), "tripduration" : 1087, "start station id" : 280, "start station name" : "E 10 St & 5 Ave", "end station id" : 527, "end station name" : "E 33 St &

我想找到乘坐次数最多的起点站,但我不确定如何找到,因为起点站名称不是数字字段。单个文档看起来像

{ "_id" : ObjectId("572bb8222b288919b68abf86"), "tripduration" : 1087, "start station id" : 280, "start station name" : "E 10 St & 5 Ave", "end station id" : 527, "end station name" : "E 33 St & 2 Ave", "bikeid" : 20945, "usertype" : "Subscriber", "birth year" : 1990, "gender" : 2, "start station location" : { "type" : "Point", "coordinates" : [ -73.99510132, 40.73331967 ] }, "end station location" : { "type" : "Point", "coordinates" : [ -73.976056, 40.744023 ] }, "start time" : ISODate("2016-01-01T00:16:08Z"), "stop time" : ISODate("2016-01-01T00:34:15Z") }
我用$max和.count()尝试了聚合函数

这会产生一个错误:

“字段“$max”必须是累加器对象”


街道名称与乘车次数有什么关系?我想你的意思是“相同不同起点的计数”?对i、 e
.aggregate([{“$count”:“$start station name”}])
我还建议阅读核心文档。如果您至少对SQL有一定的了解,并且您刚刚开始使用MongoDB,那么这将是一个很好的参考点,可以介绍一些常见语句的翻译,然后真正作为跳板,进一步研究这里演示的运算符的文档示例。此外,很抱歉,忘记将
$sort
$limit
添加到上述“max”部分的管道示例中。将是完整的,
.aggregate([{“$count”:“$start station name”},{“$sort”:{“start station name”:-1},{“$limit”:1}])
。其他现有答案和文档中也包括了这一点,它基本上将
$group
化名为
$group
,如其他示例所示,添加了
$project
阶段以重命名字段。@chris p bacon。每次骑行都有一个独特的起点。所以我想要一个最常见的起点。好啊是的,谢谢你,尼尔
db.trips.aggregate({$group: {$max: "start station name"}}).count()