Oracle分組函數是大家比較熟悉的函數了,下面就為您介紹Oracle分組函數的幾種類型,供您參考,希望對您學習Oracle分組函數方面能有所幫助。
一、Oracle 服務器按下面的順序求子句的值:
1. 如果語句包含一個 WHERE 子句,服務器建立侯選行。
2. 服務器確定在 GROUP BY 子句中指定的組。
3. HAVING 子句進一步約束不滿足在 HAVING 子句中分組標准的結果分組。
二、Oracle分組函數的類型:
•AVG 平均值•COUNT 計數•MAX 最大值•MIN 最小值•STDDEV 標准差•SUM 合計•VARIANCE 方差
1.所有Oracle分組函數忽略空值。為了用一個值代替空值,用 NVL、NVL2 或 COALESCE 函數。
2.DISTINCT 使得函數只考慮不重復的值;ALL 使得函數考慮每個值,包括重復值。默認值是 ALL ,因此不
需要指定。
3.用於函數的參數的數據類型可以是 CHAR、VARCHAR2、NUMBER 或 DATE。
4.當使用 GROUP BY 子句時,Oracle 服務器隱式以升序排序結果集。為了覆蓋該默認順序,DESC 可以被用
於 ORDER BY 子句。
使用類型:可以使用MIN 和MAX 用於任何數據類型,AVG、SUM、VARIANCE 和 STDDEV 函數只能被用於數字
數據類型。
COUNT 函數
COUNT 函數有三中格式:
COUNT(*) 返回select語句的標准行,包括重復行,空值列的行
COUNT(expr) 由 expr 指定的非空值的數。
COUNT(DISTINCT expr) 返回在列中的由 expr 指定的唯一的非空值的數。
在Oracle分組函數中使用NVL 函數:
NVL 函數強制組函數包含空值