Mysql:group by 多个字段

发布于 2021-09-02  1239 次阅读


create table test
(
a varchar(20),
b varchar(20),
c varchar(20)
)
insert into test values(1,'a','甲')
insert into test values(1,'a','甲')
insert into test values(1,'a','甲')
insert into test values(1,'a','甲')
insert into test values(1,'a','乙')
insert into test values(1,'b','乙')
insert into test values(1,'b','乙')
insert into test values(1,'b','乙')

第一次查询

select * from test; 结果如下图:

结果中 按照b列来分:则是 5个a 3个b.


按照c列来分:则是 4个甲 4个乙.


第二次 按照 b列来分组 代码如下
select   count(a),b from test group by b (可以想想把b列作为类似key主键,让它唯一,看看分几组)

第三次 按照 c列来分组 代码如下
select count(a),c from test group by c(可以想想把c列作为类似key主键,让它唯一,看看分几组)

第四次 按照 b c两个条件来分组
select count(a),b,c from test group by b,c (可以想想把b和c列一起作为类似key主键,让它唯一,看看分几组)

第五次 按照 c b 顺序分组
select count(a),b,c from test group by c,b (可以想想把c和b列一起作为类似key主键,让它唯一,看看分几组)


欢迎欢迎~热烈欢迎~