--聚合函数
--总数
--count
-- 查询男性有多少人,女性有多少人
select count(*) from students where gender = 1
select count(*) as 女性人数 from students where gender = 1
select count(*) as 男性人数 from students where gender = 2 //as 起别名
--最大值
--max
--查询最大年龄
select age from students
select max(age) from students
--查询女性的最高升高
select max(hight) from students where gender = 2
--最小
--min
select min(hight) from students where gender = 2
-- 求和
-- sub
select sub(age) from students
-- 平均值
-- avg
select avg(age) from students; //方式一
select sum(age)/count(*) from students; //方式二
--四舍五入 round(123.23,1)保留一位小数
计算所有人的平均年龄,保留2位小数
select round(ave(age),2) from students
精准存储数据 不能存小数点。。扩大 倍数 存为整数
--男性的 平均升高 保留两位小数字
select name,round(avg(hight),2) from students where gender = 1 //这种方式是不允许的
--分组
-- group by
-- 按照性别 ,查询所有的性别
select gender from students group by gender
-- 按照性别 ,查询所有的性别 并且 统计每个总数
select gender ,count(*) from students group by gender
select gender ,max(age) from students group by gender
分组并且 在每一组展示 每一组的名字
select gender ,group_concat(name) from students group by gender
-- 失败 select * from students group by gender
-- 计算男性人数
select gender ,count(*) from students where gender = 1 group by gender
所有性别都统计出来
select gender ,count(*) from students group by gender
--group_concat()
select gender,group_concat(name) from students where gender = 1 group by gender
中间加个符号 为了好阅读
select gender,group_concat(name,"_",age,"_",id) from students where gender = 1 group by gender
-- 查询平均年龄超过30岁的 性别,以及姓名 having avg(age) >30
select gender ,group_concat(name),avg(*) from students group bu gender having avg(*) >3
gender
网友评论