昨天遇到的关于group by的问题,讲解一下:group by是分组查询,也就是查询结果根据什么来分组,常用来统计均值等等,一条查询语句的可以根据多个列进行分组:group by 列1,列2,.......,但是此时select的列名中应除了group by的列外其他都应是聚合函数计算,
常用聚合函数:
聚合函数共有14个,常用的有以下几个:
count[列名]:统计分组后每组列数,若无分组则是总列数
avg[列名]:统计每个分组中该列的平均值,若无分组则是该列所有值的平均数
sum[列名]:统计每个分组中该列的数值总和,若无分组则是该列所有值的和
max[列名]:统计每个分组中该列的最大值,若无分组则是该列所有值的最大值
min[列名]:统计每个分组中该列的最小值,若无分组则是该列所有值的最小值
var[列名]:统计每个分组中该列的方差,若无分组则是该列所有值的方差
例 子:
比如根据商品商品价位分组并统计该价位商品种类数量:
select count(商品名称) from 商品表 group by 商品价格