1.表的聚合查询(和平均最大最小值)

Posted 小小小虎

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1.表的聚合查询(和平均最大最小值)相关的知识,希望对你有一定的参考价值。

1.1聚合函数
聚合函数主要有以下几个:

COUNT:计算表中的记录数(行数)
SUM:计算表中数值列中数据的合计值
AVG:计算表中数值列中数据的平均值
MAX:计算表中任意列中数据的最大值
MIN:计算表中任意列中数据的最小值
1.2计算全部数据行数
COUNT(*)计数是包含了空行的

SELECT COUNT(*)
FROM product;
1
2


1.3计算非NULL的数据行数
这里要说明的是COUNT()函数只会计算非空的数据个数。

SELECT COUNT(purchase_price)
FROM product;
1
2


1.4计算合值
计算某列的总和

SELECT SUM(sale_price)
FROM product;
1
2

分别计算多列的总和

SELECT SUM(sale_price),SUM(purchase_price)
FROM product;
1
2
这里有个问题,就是我们purchase_price中含有两个空值,但SUM时,依旧算出了结果,这是因为SUM函数会将NULL排除在外,并没有参与计算。


1.5计算平均值
SELECT AVG(sale_price)
FROM product;
1
2

来计算带有空值列的平均值

SELECT AVG(purchase_price)
FROM product;
1
2

这解释一下,平均值也是会去除NULL后再进行计算总和然和除以去除NULL后的行数。也就是说,在计算平均值时,AVG只会计算非空元素的平均值。

1.6计算最大值和最小值
SELECT MAX(sale_price),MIN(purchase_price)
FROM product;
1
2
MIN和MAX同时也会去除NULL值后进行比较大小

但是MAX和MIN和其他聚合函数不一样的地方就是,MAX和MIN不仅仅可以用于数值类型的数据,还对非数值型的数据进行使用,如时间类型.

SELECT MAX(regist_date),MIN(regist_date)
FROM product;
1
2


1.7使用聚合函数删除重复值
我们想统计非重复数据的个数,在聚合函数里先去重,再统计个数。其他聚合函数也是一样。

SELECT COUNT(DISTINCT product_type)
FROM product;
1
2

以上是关于1.表的聚合查询(和平均最大最小值)的主要内容,如果未能解决你的问题,请参考以下文章

07-SQLSERVER聚合函数

MySQL 聚合函数 和 分组查询(初级)

MySQL 聚合函数 和 分组查询(初级)

MySQL 聚合函数 和 分组查询(初级)

sql 查询一行内几列的平均值,最大值,最小值,怎么写

R - 对连续变量标题进行分组,将分类变量因子作为行并聚合为最小值、最大值、平均值