MySQL的分组函数

 关键字: group by

    group by语法可以根据给定字段对查询结果进行分组统计,相同属性的数据为一个组。通常,在每组中通过聚合函数来可以计算组中最大,最小等。

    如果group by带有having,则只有满足having后面的条件的组才能输出。

  注意: having 必须在group by之后。

  * 与分组相关的聚合函数

    count() 返回某个字段的值的行数

    max() 求最大某字段最大的值
    min() 求某字段最小值
    avg() 返回某字段平均值
    sum() 求某字段总和

    group_concat() 将分组的结果拼接成字符串


  * group by分组SQL语法

    select 字段 from 表名 where where条件 group by 分组条件 having having条件 order by 字段 asc/desc limit offset, row

    注意:
    1. GROUP BY必须出现在WHERE 之后,ORDER BY 之前。

    2. 除聚集计算语句外,SELECT语句中的每个列都必须在GROUP BY中给出

    //错误,由于name字段没有写到group by之后
      select count(id),name,sex from user group by sex;

    //正确写法
      select count(id),name,sex from user group by sex,name;

    备注:

      group by 用于根据字段进行分组

      having 指定分组的搜索条件,对分组的结果做进一步的处理

      limit 显示查询出来的数据条数

猜你喜欢

转载自blog.csdn.net/m0_37618340/article/details/82874930