我们经常需要汇总数据而不用把它们实际检索出来,这些情形有:

  • 确定表中行数(满足某个条件或包含某个特定值的行数)
  • 获取表中行组的和
  • 找出表列(或所有行或某些特定行)的最大值、最小值和平均值

5个聚集函数

注意聚集函数运行在行组上,即通常依赖于group by,或者是指定值的where语句

  • avg忽略列值为NULL的行
  • count(*)对行进行计数,包括NULL值, count(列名)不统计NULL
  • max, min忽略列值为NULL的行

distinct

  • 不指明distinct,默认是all
  • distinct必须指明列名

组合聚集名字

用了聚集函数最好起别名,便于debug