zoukankan      html  css  js  c++  java
  • MySql聚合函数及分组过滤

    count(1) 和count(*)的区别:

    SELECT COUNT(`borndate`) FROM student; -- count字段,会忽略所有的null值
    SELECT COUNT(*) FROM student; -- count(*),不会忽略null值,本质:计算行数,有多少行就返回多少数据,会把所有的列都走一遍
    SELECT COUNT(1) FROM student; -- count(*),不会忽略null值,本质:计算行数,只走一列

    分组过滤:

    1 -- 查询不同课程的平均分,最高分,最低分,平均分大于80
    2 -- 核心:(根据不同的课程分组)
    3 
    4 SELECT subjectname, AVG(studentresult) AS 平均分 ,MAX(studentresult) AS 最高分,MIN(studentresult) AS 最低分
    5 FROM result r
    6 INNER JOIN SUBJECT sub
    7 ON r.`subjectno` = sub.`subjectno`
    8 GROUP BY r.subjectno  -- 通过什么字段来分组
    9 HAVING 平均分>80   -- group by 之后不能用where 只能用having来过滤
  • 相关阅读:
    1组Alpha冲刺总结
    1组Beta冲刺4/5
    1组Beta冲刺5/5
    1组Alpha冲刺4/6
    1组Alpha冲刺总结
    1组Beta冲刺2/5
    1组Beta冲刺3/5
    1组Beta冲刺2/5
    1组Alpha冲刺4/6
    1组Alpha冲刺5/6
  • 原文地址:https://www.cnblogs.com/YXBLOGXYY/p/14761859.html
Copyright © 2011-2022 走看看