【发布时间】:2015-06-27 11:25:48
【问题描述】:
我在网上做一个练习,上面写着: 请计算人口超过 25,000 人的加利福尼亚(简称 CA)和纽约(NY)城市的平均人口。
对于这个问题,假设出现在多个州的城市名称代表两个不同的城市。
请注意: 不同的州可能有相同的城市名称。 一个城市可能有多个邮政编码。
一个文档:
db.zips.findOne()
{
"_id" : "92278",
"city" : "TWENTYNINE PALMS",
"loc" : [
-116.06041,
34.237969
],
"pop" : 11412,
"state" : "CA"
}
我的查询:
db.zips.aggregate([{$group:{ _id: {state: "$state", city: "$city", zip: "$_id"
}, pop: {$sum: "$pop"}}},{$match:{pop:{"$gt":25000}, "_id.state": {$in: ["CA", "
NY"]}}}, {$group: {_id:0, avg: {$avg: "$pop"}}}])
{ "_id" : 0, "avg" : 41485.69565217391 }
但它不正确,我错过了什么?
【问题讨论】:
-
您真的应该自己完成这些练习。通过让其他人为您完成作业部分(这将构成您成绩的一部分),您会错过学习效果并且通过欺骗您制作证书的评分系统对所有利益相关者来说意义和价值都较小。
-
想领证的人让别人自己解决作业,真是可笑。当您在某家公司作为..开发人员(或?)工作时,不知何故缺少 Internet 连接,您会怎么做?求老板解决?还是你的领导?
标签: mongodb mongodb-query