有时需要汇总数据而不用实际把它们检索出来,比如确定表中的行数,找出表列的最大值、最小值和平均值等需求
-
聚集函数:运行在行组上,计算和返回单个值的函数
-
SELECT AVG(prices) AS avg_prices FROM products;返回表中所有产品的平均价格 SELECT AVG(prices) AS avg_prices FROM products WHERE id = 110;返回特定的产品的平均价格 SELECT COUNT(*) AS num_cust FROM costomers;返回表中客户的总数 SELECT COUNT(cust_email) AS num_cust FROM costomers;返回表中有电子邮箱地址客户数 SELECT MAX(prices) AS max_prices FROM products;返回表中所有产品的最高价格 SELECT MIN(prices) AS min_prices FROM products;返回表中所有产品的最低价格 SELECT MIN(nums) AS sum_nums FROM products;返回表中所有产品的总数
-
聚焦不同值
以上五个聚集函数,默认对所有的行进行计算。
指定DISTINCT参数时,只包含不同的值,也就是会去重
-
组合聚集函数
聚集函数不只是涉及单个函数,实际上能包含多个聚集函数
SELECT COUNT(*) AS num_items, MIN(prod_prices) AS prices_min, MAX(prod_prices) AS prices_max, AVG(prod_prices) AS prices_avg FROM products; 该单条select语句执行了4个聚集计算