SQL汇总数据

聚集函数

有时我们需要汇总数据而不是把数据实际检索出来。

比如:

确定表中行数。

获得表中某些行的和

函   数 说  明
AVG() 返回某列的平均值
COUNT() 返回某列的行数
MAX() 返回某列的最大值
MIN() 返回某列的最小值
SUM() 返回某列值之和

一:AVG()

使用AVG函数返回表中某列的平均价格:

SELECT AVG(prod_price) AS avg_price FROM Products;

所有产品的平均价格。

使用AVG函数返回表中特定行的平均价格:

SELECT AVG(prod_price) AS avg_price FROM Products where vend_id='DLL01';

供应商id为‘DLL01’的产品的平均价格。

说明:AVG()函数自动忽略列值为NULL的行。

二:COUNT()

count(*) 对表中的行的数目进行计数,不管列中包含的是空值(NULL)还是非空值。

count(column)  忽略NULL值

使用count(*) 函数

 SELECT COUNT(*) AS num_cust FROM Customers 

 使用count(cust_email) 函数

 select count(cust_email) as num_cust from Customers 

只计算cust_email列有值的行进行计数。

三:SUM()

返回两个列的值相乘后相加后的结果。

 select sum(item_price*quantity) as total_price from orderitems where order_num=20005; 

本例说明sum(函数)可在多个列中进行计算

说明:SUM()函数自动忽略列值为NULL的行。

四,五:MAX(),MIN()

聚集不同的值:

以上5个聚集函数均可以如下使用:

对所有行执行计算,默认为ALL。

只包含不同的值,指定DISTINCT参数。

原文地址:https://www.cnblogs.com/liuguangshou123/p/13969762.html