5.2使用聚合(分组)函数查询

时间:2022-02-18 20:10:44
  1. COUNT()函数
    1.COUNT()函数用来统计记录的条数;
    2.与GROUP BY关键字一起使用;

    SELECT COUNT(*) FROM 表名;
    SELECT COUNT(*) AS total FROM 表名;
    SELECT 字段1,COUNT(*) FROM 表名 GROUP BY(字段1);

  2. SUM()函数
    1.SUM()函数是求和函数;
    2.与GROUP BY关键字一起使用;

    SELECT 字段1,SUM(字段2)FROM 表名 WhERE 字段1='...';
    SELECT 字段1,SUM(字段2) FROM 表名 GROUP BY 字段1;

  3. AVG()函数
    1.AVG()函数用来求平均值的函数;
    2.与GROUP BY关键字一起使用;

    SELECT 字段1, AVG(字段2) FROM 表名 WHERE 字段1='...';
    SELECT 字段1, AVG(字段2) FROM 表名 GROUP BY 字段1;

  4. MAX()函数
    1.MAX()函数用来求最大值的函数;
    2.与GROUP BY关键字一起使用;

    SELECT 字段1, 字段2, MAX(字段3) FROM 表名 WHERE 字段1='...';
    SELECT 字段1, 字段2, MAX(字段3) FROM 表名 GROUP BY 字段1;

  5. MIN()函数
    1.MIN()函数用来求最小值的函数;
    2.与GROUP BY关键字一起使用;

    SELECT 字段1, 字段2, MIN(字段3) FROM 表名 WHERE 字段1='...';
    SELECT 字段1, 字段2, MIN(字段3) FROM 表名 GROUP BY 字段1;

一个完整的DQL(数据查询语言)语句的总结:
select 
    ...
from
    ...
where
    ...
group by 
    ...
having
    ...
order by
    ...

    第一:以上的关键字顺序不能变化,严格遵守
    第二:执行顺序:
        1.from    从某张表中检索数据
        2.where   经过某条件进行过滤
        3.group by 然后分组
        4.having  分组之后不满意再过滤
        5.select  查询出来
        6.order by 排序输出