SQL高级查询(包含聚合函数)

SQL高级查询:

    执行顺序

    3)select...聚合函数 from 表名 
    1)where ... 
    2)group by ...
    4)having ...
    5)order by ...
    6)limit ...

order by

    给查询结果进行排序

    order by 字段名 ASC/DESC;

    ASC(默认) 升序

    DESC 降序

limit(永远放在SQL命令的最后写)

    显示查询记录的条数

    limit n;    显示 n 条记录   

    limit m,n;  从第 m+1 条开始显示 n 条记录

    分页:

        每页显示5条记录,显示第4页的记录

        第m页显示n条记录: limit (m-1)*n,n

聚合函数

    avg(字段名)    求该字段的平均值
    sum(字段名)    求和
    max(字段名)    最大值
    min(字段名)    最小值
    count(字段名)  统计该字段记录的个数

group by

    给查询的结果进行分组

    先分组再聚合后去重

    注意:

        select 之后的字段名如果没有在group by 之后出现,则必须要对该字段进行聚合处理

having

    对查询结果进行进一步的筛选

distinct

    不显示字段的重复值

    select distinct 字段1,字段2 from 表名;

注意:

    having语句通常和group by语句联合使用,过滤group by语句返回的记录集

    where语句只能操作表中实际存在的字段,having语句可操作由聚合函数生成的显示列

    distinct 和 from  之间的所有字段值都相同才会去重

查询表记录时可以做数学运算:

运算符:

    +   -   *   /   %

示例:

    select id,name,age*2 from student;

你可能感兴趣的:(mysql,mysql高级查询,聚合函数,mysql,mysql中的聚合函数)