第9课 汇总数据

9.1 聚集函数

聚集函数:对某些行运行的函数,计算并返回一个值。

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

通过对表中行数计数并计算其列值之和,求得该列的平均值。
举例:

SELECT AVG(prod_price) AS avg_price
FROM Products;

AVG( )也可以用来确定特定列或行的平均值。

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

AVG( )只能用来确定特定数值列的平均值,并且列名必须作为函数参数给出。
AVG( )函数忽略列值为NULL的行。

9.1.2 COUNT( )函数

COUNT( )函数进行计数。可利用COUNT( )确定表中行的数目或符合特定条件的行的数目。
COUNT( )函数有两种使用方式:

  • 使用COUNT(*)对表中行的数目进行计数,无论表列中是否包含空值(NULL)还是非空。
  • 使用COUNT(column)对特定列中具有值的行进行计数,忽略NULL值。
    举例:
SELECT COUNT(*) AS num_cust
FROM Customers;

结果显示返回值有5个,包括NULL。

SELECT COUNT(cust_email) AS num_cust
FROM Customers;

结果显示返回值有3个。

9.1.3 MAX( )函数

MAX( )返回指定列中的最大值。MAX( )要求指定列名,如下所示:

SELECT MAX(prod_price) AS max_price
FROM Products;
9.1.4 MIN( )函数

MIN( )返回指定列中的最小值。MIN( )要求指定列名,如下所示:

SELECT MIN(prod_price) AS min_price
FROM Products;
9.1.5 SUM( )函数

SUM( )用来返回指定列值的和(总计)。

SELECT SUM(quantity) AS items_ordered
FROM OrderItems
WHERE order_num = 20005;

9.2 聚集不同值

  • 对所有值执行计算,默认指定ALL参数。
  • 只包含不同的值,指定DISTINCT参数。
    比如:AVG(DISTINCT prod_price)

9.3 组合聚集函数

SELECT语句可根据需要包含多个聚集函数。

SELECT COUNT(*) AS num_items,
       MIN(prod_price) AS price_min,
       MAX(prod_price) AS price_max,
       AVG(prod_price) AS price_avg
FROM Products;
posted @ 2023-10-27 16:00  小栗帽  阅读(20)  评论(0)    收藏  举报