GROUP BY MySQL中GROUP BY返回的行数?
您可以为此使用GROUP_CONCAT()。为了理解上述概念,让我们创建一个表。
创建表的查询如下
mysql> create table groupByDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Name varchar(100) -> );
使用insert命令在表中插入一些记录。
查询如下
mysql> insert into groupByDemo(Name) values('John');
mysql> insert into groupByDemo(Name) values('Carol');
mysql> insert into groupByDemo(Name) values('Carol');
mysql> insert into groupByDemo(Name) values('Bob');
mysql> insert into groupByDemo(Name) values('Bob');
mysql> insert into groupByDemo(Name) values('Bob');
mysql> insert into groupByDemo(Name) values('John');
mysql> insert into groupByDemo(Name) values('John');
mysql> insert into groupByDemo(Name) values('John');
mysql> insert into groupByDemo(Name) values('Sam');
mysql> insert into groupByDemo(Name) values('Carol');使用select语句显示表中的所有记录。
查询如下
mysql> select *from groupByDemo;
以下是输出
+----+-------+ | Id | Name | +----+-------+ | 1 | John | | 2 | Carol | | 3 | Carol | | 4 | Bob | | 5 | Bob | | 6 | Bob | | 7 | John | | 8 | John | | 9 | John | | 10 | Sam | | 11 | Carol | +----+-------+ 11 rows in set (0.00 sec)
这是按行数分组的查询
mysql> SELECT Counter, GROUP_CONCAT(Name SEPARATOR ', ') as AllName
-> FROM (SELECT Name, COUNT(Name) as Counter
-> FROM groupByDemo
-> GROUP BY Name) tbl
-> GROUP BY Counter
-> ORDER BY Counter DESC;以下是输出
+---------+------------+ | Counter | AllName | +---------+------------+ | 4 | John | | 3 | Carol, Bob | | 1 | Sam | +---------+------------+ 3 rows in set (0.00 sec)
热门推荐
5 甄嬛传祝福语简短
10 贺卡文字同事祝福语简短
11 鼓励孩子小考祝福语简短
12 英文写结婚祝福语简短
13 财运健康成语祝福语简短
14 兄弟的结婚祝福语简短
15 对学姐的简短祝福语
16 哥哥新婚祝福语创意简短
17 牛年佛家祝福语大全简短
18 庆祝国家的祝福语简短