Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.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
Mysql 如何使用group运算符在mongodb中获取投影_Mysql_Sql_Mongodb - Fatal编程技术网

Mysql 如何使用group运算符在mongodb中获取投影

Mysql 如何使用group运算符在mongodb中获取投影,mysql,sql,mongodb,Mysql,Sql,Mongodb,我有一个列为Column1和Column2的表,如下所示 Colum1 Column2 A 1 A 2 A 3 B 2 B 4 B 6 如果我在MYSQL中执行以下SQL SELECT Column1, Column2, count(*) from Table group by Column1; 结果是 Column1 Column2

我有一个列为Column1和Column2的表,如下所示

    Colum1 Column2 
     A       1
     A       2
     A       3
     B       2
     B       4
     B       6
如果我在MYSQL中执行以下SQL

      SELECT Column1, Column2, count(*) from Table group by Column1;
结果是

  Column1 Column2 Count(*)
   A         1         3
   B         2         3
我想在MONGODB上执行类似的查询

我试过了

 QUERY1: db.table.aggregate({$group: {_id:"$Column1", count:{$sum:1}} })
 QUERY2: db.table.aggregate({$project: {column1:1, column2:1}}, {$group: {_id:"$Column1", count:{$sum:1}} })
然而,Query2的结果与Query1相同,似乎除了$group列中提到的字段之外,您无法填充其他字段


是否有一种方法可以在mongodb中填充其他字段以及$group operator?

我不确定我是否正确阅读了mysql查询,我不明白这为什么特别有用,但
$first
似乎完成了同样的任务

但是,如中所述,结果取决于排序,因此应包括排序标准

数据(为简洁起见缩短列名)

聚合查询

> db.foo.aggregate({$group: {_id:"$C1", C2: { $first: "$C2" }, count:{$sum:1}} })
结果

{
        "result" : [
                {
                        "_id" : "B",
                        "C2" : 2,
                        "count" : 3
                },
                {
                        "_id" : "A",
                        "C2" : 1,
                        "count" : 3
                }
        ],
        "ok" : 1
}

文档中有一个例子,我相信这就是您想要的:MySQL查询是正确的,我的基础设施有多台服务器,它们的名称友好,比如Server1、Server2。。。。每个服务器都有多个主机名和多个IP,现在我编写的MySQL查询为我提供了服务器友好的名称、连接到它的IP数量以及访问该服务器的一对IP地址和主机名。谢谢你的回复,我会在Mongo试试这个。谢谢你的帮助。
{
        "result" : [
                {
                        "_id" : "B",
                        "C2" : 2,
                        "count" : 3
                },
                {
                        "_id" : "A",
                        "C2" : 1,
                        "count" : 3
                }
        ],
        "ok" : 1
}