3-1 对表进行聚合查询
聚合函数
函数就像是输入某个值就能输出相应结果的盒子一样
用于汇总的函数称为聚合函数(所谓聚合,就是将多行汇总为一行):COUNT / SUM / AVG / MAX / MIN
计算表中数据的行数
select count(*)
from product;
计算NULL之外的数据的行数
-- 如果想得到purchase_price列(进货单价)中非空行数的话,可以通过将对象列设定为参数来实现
select count(purchase_price)
from product;
COUNT()会得到包含NULL的数据行数,而COUNT(<列名>)会得到NULL之外的数据行数
只有COUNT函数能将作为参数
计算合计值
select sum(sale_price),sum(purchase_price)
from product;
四则运算中如果存在NULL,结果一定是NULL
所有的聚合函数,如果以列名为参数,那么在计算之前就已经把NULL排除在外了
计算平均值
select avg(sale_price),avg(purchase_price)
from product;
计算最大值和最小值
select max(sale_price),min(purchase_price)
from product;
/*
SUM/AVG函数只能对数值类型的列使用
而MAX/MIN函数原则上可以适用于任何数据类型的列
*/
select max(regist_date),min(regist_date)
from product;
使用聚合函数删除重复值(关键字DISTINCT)
-- 想要计算值的种类时,可以在COUNT函数的参数中使用DISTINCT
select cou