zoukankan      html  css  js  c++  java
  • SQL语言基本操作(聚合函数)

    一、聚合函数

           1、标量函数:只能对单个的数字或值进行计算。主要包括字符函数、日期/时间函数、数值函数和转换函数这四类。如LEFT/RIGHT/SUBSTRING/LTRIM/RTRIM/CONCAT/UPPER/LOWER/NOW/CURRENT_DATE/DATE_FORMAT/RAND/IFNULL等函数。

           2、聚合函数意味着用于分组数据。常用的有SUM、COUNT、AVG、MIN和MAX等函数。下面将对其进行适当说明:

                2.1、COUNT函数

                      首先,COUNT函数可以用来返回所有选中行的数目,而不管任何特定的列;其次,COUNT可以指定一个具体的列而不是星号;最后,允许我们除了使用列名还可以使用关键字DISTINCT。

                      注意:COUNT函数只计算存在的情况,对值为NULL的情况不计算在内。

    相关执行SQL语句和执行代码:

                  2.2、分组数据

                         使用关键字GROUP BY 把SELECT 语句返回的数据分成任意数目的组,一旦进行分组,使用聚合函数对其进行汇总统计。具体示例如下:

              注意:若某行的Grade值为NULL时,计算平均值时会忽略带有NULL值得那一行。如果想要把NULL当做0,那么可以使用ISNULL函数把NULL转换成0,如下所示:

                         AVG(ISNULL(Grade,0)) AS   ’Average Grade‘;即可。

                 2.3、基于聚合查询条件

                       汇总数据,一旦创建了组,查询条件就会变得更加复杂。针对带GROUP BY 的一条SELECT 语句应用于任何查询条件,必须要询问查询条件是应用于单独的行还是    整个组。实际上,WHERE子句是对单独行执行查询条件。HAVING 的关键字,允许对组级别使用查询条件。

           注意:所有的列必须要么出现在GROUP BY中,要么包含在一个聚合函数中。

                      一般格式如下:SELECT  columnlist

                                                  FROM  tablelist

                                                  WHERE  condition

                                                 GROUP BY columnlist

                                                  HAVING condition

                                                  ORDER BY columnlist;

                         强调一点:当在SELECT语句中使用上面任意一个关键字时,都需要按照这里给定的顺序输入。如关键字HAVING总要放在GROUP BY之后,ORDER BY之前。

    二、小结

            聚合函数与GROUP BY组合使用时是体现真正强大之处,他允许针对划分成组的数据进行真正的聚合。而HAVING关键字的使用,允许我们对聚合函数的值应用组级别的查询条件。

  • 相关阅读:
    Parrot虚拟机
    JAVA数据结构二叉排序树
    mysql基本操作
    ruby数组操作
    JAVA核心技术之球体碰撞多线程版
    JAVA数据结构选择排序
    JAVA的线程让步
    Perl 与数学:一份快速参考
    科学计算软件包python(x,y)简介
    JAVA数据结构解析数学表达式
  • 原文地址:https://www.cnblogs.com/hanfeihanfei/p/7016247.html
Copyright © 2011-2022 走看看