分组目的是为了统计,因此分组通常和聚合函数连用。
聚合函数
● count: 计算总数● sum: 求和● max: 最大值● min: 最小值● avg: 平均值
聚合函数用法示例
查出最贵的商品价格
SELECT max(shop_price) FROM `goods`;
查出最便宜的商品的价格
SELECT min(shop_price) FROM `goods`;
查询该店所有商品的库存总量
SELECT sum(goods_number) FROM `goods`;
查询所有商品的平均价
SELECT avg(shop_price) FROM `goods`;
查询该店一共有多少种商品
SELECT count(*) FROM `goods`;
SELECT sex, count(*) FROM `stu` GROUP BY `sex`; // 更推荐SELECT sex, count(sex) FROM `stu` GROUP BY `sex`;
练习
需求: 统计每个栏目下最贵的商品
思路:
- 第一步: 按照栏目(cate_id)对所有的数据进行分组
- 第二步: 使用聚合函数求最大值
分组统计
第一步: 分组
SELECT cate_id FROM goods group by cate_id;
第二步: 统计
SELECT `cate_id`, max(shop_price)
FROM `goods`
GROUP BY `cate_id`;
