chapter12:汇总数据

2017-12-19  本文已影响0人  WeirdoSu

聚集函数

常常需要汇总数据而不用把它们实际检索出来。

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

聚集函数(aggregate function):运行在行组上,计算和返回单个值的函数。

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

例:

AVG()

SELECT AVG(prod_price) AS avg_price
FROM products
WHERE vend_id = 1003;

COUNT():注意NULL值,如果指定列名则空的行被忽略,如果是*则不忽略。

SELECT COUNT(*) AS num_cust
FROM customers;

SELECT COUNT(cust_email) AS num_cust
FROM customers;

其他函数用法相同,注意MAX()和MIN()都忽略NULL值,SUM()可以汇总计算值。

SELECT SUM(item_price*quantity) AS total_price
FROM orderitems
WHERE order_num = 20005;

聚集不同值

聚集函数的DISTINCT的使用只在MySQL5之后的版本可用。

SELECT AVG(DISTINCT prod_price) AS avg_price
FROM products
WHERE vend_id = 1003;

组合聚合函数

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;
上一篇下一篇

猜你喜欢

热点阅读