A-A+

Mysql汇总函数

2012年09月28日 乱七八糟 评论 32 条 阅读 803 次

1.count函数:
   conut函数用于统计不包含null值的记录或字段值,基本上, COUNT 让我们能够数出在表格中有多少笔资料被选出来。COUNT 和 DISTINCT 经常被合起来使用,目的是找出表格中有多少笔不同的资料 (至于这些资料实际上是什么并不重要)。使用conut函数的另一种方式与星号配合,count(*)会统计表里的全部记录数据,包含重复的。count函数统计的是行数,不涉及数据类型,行里可以包含任意的数据类型。它的语法是:
      SELECT COUNT("栏位名") FROM "表格名"
      举例:统计teacher 表中人的个数,但不能重复;
      select count( distinct name) from teacher;
            统计97class表中的全部记录条数。
      select count(*) from 97class;

2.sum函数:
   sum函数返回一组记录中某一个字段值的总和。它可以与distinct一起使用,这时只会计算不同记录之和,这一般没有什么意义,因为有些记录被忽略掉了。sum函数所处理的字段类型必须是数值型的,不能是其他类型的。
      举例:统计97class的人员的年龄总和。
      select sum(age) from 97class;

3.avg函数:
   avg函数可以计算一组指定记录的平均值,在与distinct一起使用时,它返回不重复记录的平均值。avg函数的参数必须是数值型的。
      举例:统计97class表的平均年龄。
      select avg(age) from 97class;

4.max函数:
   max函数返回一组记录中某个字段的最大值,null值不再计算范围之内,distinct也可以使用。
      举例:统计出97class表中年龄最大一个。
      select max(age) from 97class;

5.min函数:
   min函数返回一组记录中某个字段的最小值,null值不再计算范围之内,distinct也可以使用。
      举例:统计出97class表中年龄最小一个。
      select min(age) from 97class;

警告:在汇总函数与distinct命令一起使用时,查询返回的结果可能不是我们所需要的。汇总函数的目的在于根据表里全部记录进行数据统计。
   下面的举例使用了汇总函数和算术操作:
      select count(prod_num),sum(prod_toal),sum(prod_toal) / count(prod_num) avg_prod from 97mouth;
   这条语句统计了全部订单数量,统计了订购铲平的总数,把这两个相除,得到每张订单的平均产品数量。语句还为计算创建了别名:avg_prod.

给我留言

Copyright © 2011-2016 零下二十四度Theme By  Ality  京ICP备16007547号   关于本站

用户登录