彙總函式
若要摘要資料表中所有的資料,會建立包含 SUM( ) 或 AVG( ) 這類函式的彙總查詢。 執行查詢後,結果集會出現具有摘要資訊的單一資料列。
例如,您可以建立加總 Price 資料行內容的查詢,以計算 Titles 資料表中所有書籍的總價。 查詢的結果輸出可能如下所示:
對應的 SQL 陳述式將如下所示:
SELECT SUM(price) total_price
FROM titles
您可以使用下列的彙總函式 (Aggregate Function):
彙總函式 |
描述 |
---|---|
AVG(expr) |
資料行中所有值的平均。 資料行中只能包含數字資料。 |
COUNT(expr), COUNT(*) |
計數資料行 (如果將資料行名稱指定為 expr) 中的值,或計數資料表或群組 (如果指定為 *) 中所有資料列的值。 COUNT(expr) 會忽略 null 值,但是 COUNT(*) 的計數中會包含 null 值。 |
MAX(expr) |
資料行中最高的值 (文字資料型別則是依字母順序的最後一個值)。 忽略 null 值。 |
MIN(expr) |
資料行中最低的值 (文字資料型別則是依字母順序的第一個值)。 忽略 null 值。 |
SUM(expr) |
資料行值的總計。 資料行中只能包含數字資料。 |
注意事項 |
---|
Oracle 支援其他彙總函式。 |
使用彙總函式時,根據預設,摘要資訊會包含所有指定的資料列。 有時候結果集會包含非唯一的資料列。 您可以使用彙總函式的 DISTINCT 選項,篩選掉非唯一資料列。
彙總函式可以和其他運算式合併,計算其他的摘要值。 如需詳細資訊,請參閱 如何:使用自訂運算式摘要或彙總值。