The Wayback Machine - http://web.archive.org/web/20140105211236/http://msdn.microsoft.com:80/zh-tw/library/ms187810(v=sql.90).aspx
匯出 (0) 列印
全部展開
Expand Minimize
1 人當中有 1 人評分為有幫助- 為這個主題評分

SUM (Transact-SQL)

傳回運算式中所有值的總和,或只傳回 DISTINCT 值的總和。SUM 只能搭配數值資料行來使用。系統會忽略 Null 值。後面可能接著 OVER 子句。

主題連結圖示 Transact-SQL 語法慣例


SUM ( [ ALL | DISTINCT ] expression )
ALL

將彙總函數套用至所有值。ALL 是預設值。

DISTINCT

指定 SUM 傳回唯一值的總和。

expression

這是一個常數、資料行或函數,或算術、位元和字串運算子的任何組合。expression 是精確數值或近似數值資料類型類別目錄的運算式,但 bit 資料類型除外。不允許彙總函數和子查詢。如需詳細資訊,請參閱<運算式 (Transact-SQL)>。

以最精確的 expression 資料類型來傳回所有 expression 值的總和。

運算式結果 傳回類型

整數類別目錄

int

decimal 類別目錄 (p, s)

decimal(38, s)

money 和 smallmoney 類別目錄

money

float 和 real 類別目錄

float

ms187810.note(zh-tw,SQL.90).gif重要事項:
當使用 CUBE 或 ROLLUP 時,不支援個別彙總,如 AVG(DISTINCT column_name)、COUNT(DISTINCT column_name)、MAX(DISTINCT column_name)、MIN(DISTINCT column_name) 和 SUM(DISTINCT column_name)。如果使用的話,SQL Server 2005 Database Engine 會傳回錯誤訊息,且會取消查詢。

A. 在彙總和資料列彙總上使用 SUM

下列範例會顯示彙總函數和資料列彙總函數之間的差異。第一個範例顯示只提供摘要資料的彙總函數,第二個範例顯示同時提供詳細資料和摘要資料的資料列彙總函數。

USE AdventureWorks;
GO
SELECT Color, SUM(ListPrice), SUM(StandardCost)
FROM Production.Product
WHERE Color IS NOT NULL AND ListPrice != 0.00 AND Name LIKE 'Mountain%'
GROUP BY Color
ORDER BY Color;
GO

以下為結果集:

Color                                 
--------------- --------------------- ---------------------
Black           27404.84              15214.9616
Silver          26462.84              14665.6792
White           19.00                 6.7926

(3 row(s) affected)

USE AdventureWorks;
GO
SELECT Color, ListPrice, StandardCost
FROM Production.Product
WHERE Color IS NOT NULL AND ListPrice != 0.00 AND Name LIKE 'Mountain%'
ORDER BY Color
COMPUTE SUM(ListPrice), SUM(StandardCost) BY Color;
GO

以下為結果集:

Color           ListPrice             StandardCost
--------------- --------------------- ---------------------
Black           2294.99               1251.9813
Black           2294.99               1251.9813
Black           2294.99               1251.9813
Black           1079.99               598.4354
Black           1079.99               598.4354
Black           1079.99               598.4354
Black           1079.99               598.4354
Black           3374.99               1898.0944
Black           3374.99               1898.0944
Black           3374.99               1898.0944
Black           3374.99               1898.0944
Black           539.99                294.5797
Black           539.99                294.5797
Black           539.99                294.5797
Black           539.99                294.5797
Black           539.99                294.5797

sum                   sum
--------------------- ---------------------
27404.84              15214.9616

Color           ListPrice             StandardCost
--------------- --------------------- ---------------------
Silver          2319.99               1265.6195
Silver          2319.99               1265.6195
Silver          2319.99               1265.6195
Silver          3399.99               1912.1544
Silver          3399.99               1912.1544
Silver          3399.99               1912.1544
Silver          3399.99               1912.1544
Silver          769.49                419.7784
Silver          769.49                419.7784
Silver          769.49                419.7784
Silver          769.49                419.7784
Silver          564.99                308.2179
Silver          564.99                308.2179
Silver          564.99                308.2179
Silver          564.99                308.2179
Silver          564.99                308.2179

sum                   sum
--------------------- ---------------------
26462.84              14665.6792

Color           ListPrice             StandardCost
--------------- --------------------- ---------------------
White           9.50                  3.3963
White           9.50                  3.3963

sum                   sum
--------------------- ---------------------
19.00                 6.7926

(37 row(s) affected)

B. 計算多個資料行的群組總計

下列範例會針對 Product 資料表中所列出的每個顏色,來計算 ListPrice 和 StandardCost 的總和。

USE AdventureWorks;
GO
SELECT Color, SUM(ListPrice), SUM(StandardCost)
FROM Production.Product
GROUP BY Color
ORDER BY Color
GO

以下為結果集:

Color                                 
--------------- --------------------- ---------------------
NULL            4182.32               2238.4755
Black           67436.26              38636.5002
Blue            24015.66              14746.1464
Grey            125.00                51.5625
Multi           478.92                272.2542
Red             53274.10              32610.7661
Silver          36563.13              20060.0483
Silver/Black    448.13                198.97
White           36.98                 13.5172
Yellow          34527.29              21507.6521

(10 row(s) affected)
本文對您有任何幫助嗎?
(剩餘 1500 個字元)

社群新增項目

新增
Image
Microsoft 正展開一份線上問卷調查,了解您對於 MSDN 網站的看法。 如果您選擇參加,您離開 MSDN 網站時即會顯示線上問卷調查。

您是否想要參加?
顯示:
© 2014 Microsoft. 著作權所有,並保留一切權利。