首页 > 技术文章 > mysql 分组查询 group by

xiandong 2017-10-30 22:59 原文

创建一个表 表名:xl

select * from xl;

分组之后,按照分组的字段,只会显示一个

通过性别sex分组

select * from xl group by sex;

通过prold分组

select* from xl group by prold;

还可以按照字段的位置

select*from xl group by 6;age字段


--按照多个字段分组--

select* from xl group by prold,age;

加入条件:age>=18的通过性别分组

select * from xl where age>=18 group by sex;

 这里的问题不能知道组别之内有多少数值

查询prold,age ,姓名按age分组

select prold,age, group_concat(username) from xl group by age;

 select prold,group_concat(age), group_concat(username) from xl group by age;

 


配合聚合函数

select 字段名, 字段名, group-concat(字段名),count(*) from 表名 by字段名
count(*):*查看全部,把所有分组内的条数都显

 查询prold 用户详情 组中总人数 最大年龄 最小年龄 平均regtime 按照prold分组

select prold ,group-concat(username),count(*),max(age)as “最大”,min(age)as“最小”,avg(age)as“平均” from xl group by,prold;

 

 

推荐阅读