Mysql学习_第九章_汇总数据
汇总数据
聚集函数
AVG() 函数 AVG() 通过对表中行数计数并计算其列值之和,求得该列的平均值。 AVG()可用来返回所有列的平均值,也可以用来返回特定列或行的平均值。
SELECT AVG(prod_price) AS avg_price FROM Products; #返回prod_price字段的平均值
SELECT AVG(prod_price) AS avg_price FROM Products WHERE vend_id = DLL01; #返回vend_id位DLL01的prod_price的平均值
COUNT() 函数
- COUNT() 函数进行计数。可利用 COUNT() 确定表中行的数目或符合特定条件的行的数目。
- 使用 COUNT(*) 对表中行的数目进行计数,不管表列中包含的是空值( NULL )还是非空值。
- 使用 COUNT(column) 对特定列中具有值的行进行计数,忽略 NULL 值。
SELECT COUNT(*) AS num_cust FROM Customers; #对customers表中所有记录进行计数
SELECT COUNT(cust_email) AS num_cust FROM Customers; #对customer表中含有cust_email的记录的进行计数
MAX() 函数
MAX() 返回指定列中的最大值。 MAX() 要求指定列名
在用于文本数据时, MAX() 返回按该列排序后的最后一行。
SELECT MAX(prod_price) AS max_price FROM Products;
备注:MAX() 函数忽略列值为 NULL 的行。
MIN() 函数 返回最小值 用法同max()
SUM() 函数 SUM() 用来返回指定列值的和(总计)。
SELECT SUM(quantity) AS items_ordered FROM OrderItems WHERE order_num = 20005;
SUM() 也可以用来合计计算值。
SELECT SUM(item_price*quantity) AS total_price FROM OrderItems WHERE order_num = 20005;
备注:sum忽略NULL值
聚集不同值
只包含不同的值,防止出现多次的同一个数值被反复统计,指定 DISTINCT 参数。
SELECT AVG(DISTINCT prod_price) AS avg_price FROM Products WHERE vend_id = DLL01;
组合聚集函数
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;
上一篇:
IDEA上Java项目控制台中文乱码