Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mongodb查询查找数据库中的城市总数_Mongodb - Fatal编程技术网

mongodb查询查找数据库中的城市总数

mongodb查询查找数据库中的城市总数,mongodb,Mongodb,大家好,我有一个巨大的数据,其中包含以下信息: { "_id" : "01011", "city" : "CHESTER", "loc" : [ -72.988761, 42.279421 ], "pop" : 1688, "state" : "MA" } { "_id" : "01012", "city" : "CHESTERFIELD", "loc" : [ -72.833309, 42.38167 ], "pop" : 177, "state" : "MA" } { "_id"

大家好,我有一个巨大的数据,其中包含以下信息:

  { "_id" : "01011", "city" : "CHESTER", "loc" : [ -72.988761, 42.279421 ], "pop" : 1688, "state" : "MA" }
  { "_id" : "01012", "city" : "CHESTERFIELD", "loc" : [ -72.833309, 42.38167 ], "pop" : 177, "state" : "MA" }
  { "_id" : "01013", "city" : "CHICOPEE", "loc" : [ -72.607962, 42.162046 ], "pop" : 23396, "state" : "MA" }
  { "_id" : "01020", "city" : "CHICOPEE", "loc" : [ -72.576142, 42.176443 ], "pop" : 31495, "state" : "MA" }
我希望能够使用Mongodb命令找到这个数据库中的城市数量。但数据库中也可能有多个记录了相同城市的数据。正如上面的例子

我试过:

  >db.zipcodes.distinct("city").count();
2015-04-25T15:57:45.446-0400 E QUERY    warning: log line attempted (159k) over max size (10k), printing beginning and end ... TypeError: Object AGAWAM,BELCHERTOWN ***data*** has no method 'count'
但是我没有和我一起工作。我也做了这样的事情:

   >db.zipcodes.find({city:.*}).count();

  2015-04-25T16:00:01.043-0400 E QUERY    SyntaxError: Unexpected token .
但它也不起作用,即使起作用,它也会计算冗余数据(城市)。有什么想法吗?

而不是去做

db.zipcodes.distinct("city").count(); 
这样做:

db.zipcodes.distinct("city").length; 
还有一个功能,它可以帮助你

我在聚合中也找到了1(与您的查询相关)

如果要添加条件,则可以参考/和/或/

看,如果有帮助的话。

不要这样做

db.zipcodes.distinct("city").count(); 
这样做:

db.zipcodes.distinct("city").length; 
还有一个功能,它可以帮助你

我在聚合中也找到了1(与您的查询相关)

如果要添加条件,则可以参考/和/或/

看,如果有帮助的话。

不要这样做

db.zipcodes.distinct("city").count(); 
这样做:

db.zipcodes.distinct("city").length; 
还有一个功能,它可以帮助你

我在聚合中也找到了1(与您的查询相关)

如果要添加条件,则可以参考/和/或/

看,如果有帮助的话。

不要这样做

db.zipcodes.distinct("city").count(); 
这样做:

db.zipcodes.distinct("city").length; 
还有一个功能,它可以帮助你

我在聚合中也找到了1(与您的查询相关)

如果要添加条件,则可以参考/和/或/


如果有帮助,请参阅。

您也可以使用进行此操作。聚合管道有两个操作员阶段;第一个按城市对文档进行分组,最后一个按前一个流计算不同文档的总数:

db.collection.aggregate([
    {
        "$group": {
            "_id": "$city"            
        }
    },
    {
        "$group": {
            "_id": 0,
            "count": { "$sum": 1 }
        }
    }
]);
输出

/* 1 */
{
    "result" : [ 
        {
            "_id" : 0,
            "count" : 3
        }
    ],
    "ok" : 1
}

您也可以使用进行此操作。聚合管道有两个操作员阶段;第一个按城市对文档进行分组,最后一个按前一个流计算不同文档的总数:

db.collection.aggregate([
    {
        "$group": {
            "_id": "$city"            
        }
    },
    {
        "$group": {
            "_id": 0,
            "count": { "$sum": 1 }
        }
    }
]);
输出

/* 1 */
{
    "result" : [ 
        {
            "_id" : 0,
            "count" : 3
        }
    ],
    "ok" : 1
}

您也可以使用进行此操作。聚合管道有两个操作员阶段;第一个按城市对文档进行分组,最后一个按前一个流计算不同文档的总数:

db.collection.aggregate([
    {
        "$group": {
            "_id": "$city"            
        }
    },
    {
        "$group": {
            "_id": 0,
            "count": { "$sum": 1 }
        }
    }
]);
输出

/* 1 */
{
    "result" : [ 
        {
            "_id" : 0,
            "count" : 3
        }
    ],
    "ok" : 1
}

您也可以使用进行此操作。聚合管道有两个操作员阶段;第一个按城市对文档进行分组,最后一个按前一个流计算不同文档的总数:

db.collection.aggregate([
    {
        "$group": {
            "_id": "$city"            
        }
    },
    {
        "$group": {
            "_id": 0,
            "count": { "$sum": 1 }
        }
    }
]);
输出

/* 1 */
{
    "result" : [ 
        {
            "_id" : 0,
            "count" : 3
        }
    ],
    "ok" : 1
}


什么
不起作用意味着什么
。查询失败,您得到的数字是错误的。如果它是错误的,为什么它是错误的。我得到的第一个:2015-04-25T15:57:45.446-0400 E查询警告:日志行尝试(159k)超过最大大小(10k),打印开始和结束。。。TypeError:************城市打孔机*******没有方法“计算”我得到的第二个打孔机:2015-04-25T16:00:01.043-0400 E查询语法错误:意外令牌。
不起作用的意思可能重复
。查询失败,您得到的数字是错误的。如果它是错误的,为什么它是错误的。我得到的第一个:2015-04-25T15:57:45.446-0400 E查询警告:日志行尝试(159k)超过最大大小(10k),打印开始和结束。。。TypeError:************城市打孔机*******没有方法“计算”我得到的第二个打孔机:2015-04-25T16:00:01.043-0400 E查询语法错误:意外令牌。
不起作用的意思可能重复
。查询失败,您得到的数字是错误的。如果它是错误的,为什么它是错误的。我得到的第一个:2015-04-25T15:57:45.446-0400 E查询警告:日志行尝试(159k)超过最大大小(10k),打印开始和结束。。。TypeError:************城市打孔机*******没有方法“计算”我得到的第二个打孔机:2015-04-25T16:00:01.043-0400 E查询语法错误:意外令牌。
不起作用的意思可能重复
。查询失败,您得到的数字是错误的。如果它是错误的,为什么它是错误的。我得到的第一个:2015-04-25T15:57:45.446-0400 E查询警告:日志行尝试(159k)超过最大大小(10k),打印开始和结束。。。TypeError:************城市打孔机*******没有方法“计数”我得到的第二个打孔机:2015-04-25T16:00:01.043-0400 E查询语法错误:意外令牌。此打孔机的可能副本也可以正常工作,谢谢。我怎样才能把标签改成城市号:1645@SalehMakkawy你的意思是把字段
“count”
改成
“city”
?是的,我已经弄明白了。非常感谢。我是mongodb的新手。这也很好,谢谢。我怎样才能把标签改成城市号:1645@SalehMakkawy你的意思是把字段
“count”
改成
“city”
?是的,我已经弄明白了。非常感谢。我是mongodb的新手。这也很好,谢谢。我怎样才能把标签改成城市号:1645@SalehMakkawy你的意思是把字段
“count”
改成
“city”
?是的,我已经弄明白了。非常感谢。我是mongodb的新手。这也很好,谢谢。我怎样才能把标签改成城市号:1645@SalehMakkawy你的意思是把字段
“count”
改成
“city”
?是的,我已经弄明白了。非常感谢。我是mongodb的新手。好的,我想做的另一件事是:列出马萨诸塞州人口在1000到2000之间的城市。@Salehmakkaway我已经更新了我的答案,关于你的上述问题。好的,我想做的另一件事是:列出马萨诸塞州人口在1000到2000之间的城市。@Salehmakkaway我已经更新了我的答案,关于你的上述查询。好的,我想做的另一件事:列出马萨诸塞州人口在1000到2000之间的城市。@Salehmakkaway我已经更新了关于你上述查询的答案。好的,我想做的另一件事:列出统计中的城市