SQL統計函數使用實例


統計函數是在數據庫操作中時常使用的函數,又稱為基本函數或集函數,常用的統計函數如表4-6 所示.



這些函數通常用在SELECT 子句中,作為結果數據集的字段返回的結果。在SELECT語句的SELECT 子句中使用函數的語法如下:
    SELECT 函數名(列名1 或*),...函數名(列名n)
    FROM 表名

提醒:函數的對象或自變量必須包括在圓括號內。如果函數需要一個以上的自變量,可用逗號隔開各個自變量。

1、AVG()

    AVG() 函數返回有關列值的算術平均值。此函數只適用數值型的列。其語法如下:


    例4-26: 求各部門的平均工資



    運行結果如下:




2、COUNT()
    COUNT() 函數返回與選擇表達式匹配的列中不為NULL 值的數據個數。COUNT()函數的語法如下:


    例4-27: 計算企業的部門數目



提醒:如果用COUNT()函數引用一個列名,則返回列值的個數。

    COUNT() 函數在計算中重復計算了相同的值。如果使用了關鍵字DISTINCT, 則COUNT() 函數就返回行惟一值的個數。
    如果在SELECT 子句的列名位置上使用符號(*), 即使用COUNT (*), 則指定了與SELECT 語句的判別式匹配的所有行,COUNT()函數將計算字段的行數,包括為NULL值的行。

    例4-28: 列出員工少於3 人的部門編號




3、MAX()
    MAX() 函數返回某一列的最大值。此函數適用於數值型、字符型、和日期型的列。對於列值為NULL 的列,MAX() 函數不將其列為對比的對象。其語法如下:


    例4-29: 求工資最高的員工姓名



4、MIN()
    MIN() 函數返回某一列的最小值。此函數適用於數值型、字符型、和日期型的列。對於列值為NULL 的列,MIN() 函數不將其列為對比的對象。其語法如下:


    例4-30: 求最資深的員工姓名




5、SUM()
    SUM() 函數用來返回諸如列值這樣的實體的總和。此函數只適用於數值型的列,不包括NULL 值。其語法如下:


    例4-31: 求各部門的員工工資總額


    可以在一個語句中使用多個函數。
    例4-32: 求員工工資的最大值、最小值、平均值




除了上述常用的函數外,統計函數還有以下幾種:

6、STDEV()
    STDEV() 函數語法如下:


    STDEV () 函數返回表達式中所有數據的標准差(Statistical Standard Deviation)。表達式通常為表的某一數據類型為NUMERIC 的列(或近似NUMERIC 類型的列,如MONEY 類型,但BIT 類型除外)。表達式中的NULL 值將被忽略。其返回值為FLOAT類型。



7、STDEVP()
    STDEVP() 函數語法如下:


   STDEVP() 函數返回總體標准差(Statistical Standard Deviation for The Population)。表達式及返回值類型同STDEV() 函數。



8、VAR()
    VAR() 函數語法如下:


    VAR() 函數返回表達式中所有值的統計變異數(Statistical Variance)。 表達式及返回值類型同STDEV() 函數。



9、VARP()
    VARP() 函數語法如下:


    VARP() 函數返回總體變異數(Statistical Variance for The Population)。 表達式及返回值類型同STDEV() 函數。

 

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com