12 聚集函数:avg() count() max() min() sum()

来源:互联网 发布:c语言的位域 编辑:程序博客网 时间:2024/06/03 06:25

单个聚集函数

avg():

  • 行数计数,计算特定列值之和,求得该列的平均值
  • 必须给出列名作为函数的参数
  • 忽略列值为null的行

例:该selete语句返回值avg_price,计算所有产品的平均价格
selete avg(p_price) as avg_price
from products;

进一步:1003供应商的产品的平均价格
selete avg(p_price) as avg_price
from products
where  v_id=1003;

count():

两种使用方式:

  • count(*)对表中的行进行统计,不管表中的列值是否为空;
  • count(col)对特定的列的非空值行进行统计,忽略null的行。

selete count(*)as num
from tb;


max():

  • 返回列中的最大值
  • 忽略列值为null的行

对非数值使用max():MySQL允许它返回任一列中的最大值,如文本、日期。


sum():

返回指定列值的和

聚集不同值:distinct

例:不同价格的平均值
selete avg(distinct p_price)as avg_price
from products
where v_id=1003;


组合聚集函数:

selete count(*) as num,
            min(p_price) as max_p_price,
            max(p_price) as min_p_price,
           avg(p_price) as avg_p_price
from products;
阅读全文
0 0