zoukankan      html  css  js  c++  java
  • 9 汇总数据

    9.1 聚集函数

     SQL聚集函数

    下面说明一下各个函数的使用

    9.1.1 AVG()函数


    AVG()通过对表中行数计数并计算特定列值之和,求得该列的平均值。 AVG()可用来返回所有列的平均值,也可以用来返回特定列或行的平均值。
    下面的例子使用AVG()返回products表中所有产品的平均价格:

    SELECT AVG( prod_price ) AS avg_price
    FROM Products;

    SELECT语句返回值avg_Price,它包含products表中所有产品的平均价格。


    AVG()也可以用来确定特定列或行的平均值。 下面的例子返回特定供应商所提供产品的平均价格:

    SELECT AVG( prod_price ) AS avg_price
    FROM Products
    WHERE vend_id = 1003;

    这条SELECT语句与前一条的不同之处在于它包含了WHERE句。此WHERE子句仅过滤出vend_id1003的产品,因此avg_price中返回的值只是该供应商的产品的平均值。

    注意:AVG()只能用来确定特定数值列的平均值,而且列名必须作为函数参数给出。为了获得多个列的平均值,必须使用多个AVG()函数。

    9.1.2 COUNT()函数


    COUNT()函数进行计数。可利用COUNT()确定表中行的数目或符合特定条件的行的数目。


    COUNT()函数有两种使用方式。

    • 使用COUNT(*)对表中行的数目进行计数, 不管表列中包含的是空值(NULL)还是非空值。
    • 使用COUNT(column)对特定列中具有值的行进行计数,忽略 NULL值。 

     

    9.1.3 MAX()函数


    MAX()返回指定列中的最大值。 MAX()要求指定列名

    SELECT MAX( prod_price ) AS max_price
    FROM Products;

    这里, MAX()返回Products表中最贵的物品的价格。

    注意: 虽然MAX()一般用来找出最大的 数值或日期值,但MySQL允许将它用来返回任意列中的最大 值,包括返回文本列中的最大值。在用于文本数据时,如果数 据按相应的列排序,则MAX()返回最后一行。

    9.1.4 MIN()函数

    MIN()的功能正好与MAX()功能相反,它返回指定列的最小值。与MAX()一样, MIN()要求指定列名


    9.1.5 SUM()函数

    SUM()用来返回指定列值的和(总计)。

    下面举一个例子:orderitems表包含订单中实际的物品,每个物品 有相应的数量(quantity)。可如下检索所订购物品的总数(所有 quantity值之和):

    SELECT SUM( quantity ) AS items_ordered
    FORM orderitems
    WHERE order_num = 20005;

    函数SUM(quantity)返回订单中所有物品数量之和, WHERE句保证只统计某个物品订单中的物品 。

    9.2 聚集不同值

    以上5个聚集函数都可以如下使用:

    • 对所有的行执行计算,指定ALL参数或不给参数(因为ALL是默认行为);
    • 只包含不同的值,指定DISTINCT参数。

    注意:ALL参数不需要指定,因为它是默认行为。 如果不指定DISTINCT,则假定为ALL

    例如在使用AVG()函数返回特定供应商提供的产品的平均价格时,与上面的SELECT语句相同,但使用了DISTINCT参数,此时平均值只考虑各个不同的价格

    9.3 组合聚集函数


    SELECT语句可根据需要包含多个聚集函数。

    例如:

    SELECT COUNT(*) AS num_items,
           MIN( prod_price ) AS price_min,
           MAX( prod_price ) AS price_max,
           AVG( prod_price ) AS price_avg
    FROM Products;

    这里用单条SELECT语句执行了4个聚集计算,返回4个值 products表中物品的数目,产品价格的最高、最低以及平均值)。



     

  • 相关阅读:
    Leetcode Spiral Matrix
    Leetcode Sqrt(x)
    Leetcode Pow(x,n)
    Leetcode Rotate Image
    Leetcode Multiply Strings
    Leetcode Length of Last Word
    Topcoder SRM 626 DIV2 SumOfPower
    Topcoder SRM 626 DIV2 FixedDiceGameDiv2
    Leetcode Largest Rectangle in Histogram
    Leetcode Set Matrix Zeroes
  • 原文地址:https://www.cnblogs.com/xlzfdddd/p/10152737.html
Copyright © 2011-2022 走看看