分组目的是为了统计,因此分组通常和聚合函数连用。

    聚合函数

    1. count: 计算总数
    2. sum: 求和
    3. max: 最大值
    4. min: 最小值
    5. avg: 平均值

    聚合函数用法示例

    查出最贵的商品价格

    1. SELECT max(shop_price) FROM `goods`;

    查出最便宜的商品的价格

    1. SELECT min(shop_price) FROM `goods`;

    查询该店所有商品的库存总量

    1. SELECT sum(goods_number) FROM `goods`;

    查询所有商品的平均价

    1. SELECT avg(shop_price) FROM `goods`;

    查询该店一共有多少种商品

    1. SELECT count(*) FROM `goods`;
    1. SELECT sex, count(*) FROM `stu` GROUP BY `sex`; // 更推荐
    2. 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`;