- Group By子句
Group By 从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。即Group By子句的分组可以理解为去重的效果,如图,这是使用了Group By查询出的结果,其结果没有出现重复的数据
这是没有使用Group By查询出的结果,其结果存在多条重复的数据
2、聚合函数
聚合函数对组执行计算并返回每个组的唯一值,即聚合函数会对数据进行聚合。 例如, COUNT(函数返回每个组中的行数),SUM(求这一列满足条件的总和), AVG(求这一列满足条件的平均值), MIN(求这一列满足条件的最小值) , MAX(求这一列满足条件的最大值)。
聚合函数有两种使用方式:
(1)、聚合函数通常与Group By子句一起使用(常用)
在要使到聚合函数,并且要查询表中其它的值或者需要返回的数据不止一条时,要用Group By子句和聚合函数一起使用,否则,数据库系统将会提示“选择列表中的列 ‘sc.sno’ 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中”错误,因为无法保证列或表达式将为每个组返回单个值
(2)、聚合函数的单独使用
前提条件:
A、 不需要用到分组
B、 返回值只有1条数据
C、 要查询的类型只有聚合函数,不能出现表的其它列,则会出现上面的错误
可以同时使用多个聚合函数