我是 MongoDB 新手,尝试对运行查找操作后得到的结果执行聚合操作。
我正在运行查找操作来获取 5 英里距离内的州、城市和人口结果,如下所示:
db.zipcodes.find({loc : { $near : [-86, 54], $maxDistance: 5*(1/69) }})
Run Code Online (Sandbox Code Playgroud)
现在,我想执行聚合,即按状态对结果进行分组,并以排序的方式返回组状态的总人口。我正在尝试这样的事情:
db.zipcodes.aggregate( { $group : { ... }, { db.zipcodes.find(...) }}, {$sort : {_population : 1}})
Run Code Online (Sandbox Code Playgroud)
但不幸的是它不起作用。
任何帮助,将不胜感激。
Find 查询结果无法传递到聚合,可以使用$match代替 find代替 find ,然后进行分组操作
示例查询
db.zipcodes.aggregate([{$match:{loc : { $near : [-86, 54], $maxDistance: 5*(1/69) }}},{$group : { ... }}, {$sort : {_population : 1}}])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2918 次 |
| 最近记录: |