Sum 函數 (報表產生器及 SSRS)
傳回運算式指定之所有非 Null 數值的總和 (在給定範圍中評估)。
注意
您可以在報表產生器以及 SQL Server Data Tools 的報表設計師中建立和修改報表定義 (.rdl)。 每種撰寫環境都會提供不同的方式來建立、開啟和儲存報表與相關的項目。 如需詳細資訊,請參閱在網路上 microsoft.com 在 報表設計師 和 Report Builder (SSRS) 中設計報表。
語法
Sum(expression, scope, recursive)
參數
expression
(Integer
或 Float
) - 要在其上執行彙總的運算式。
範圍 (scope)
(String
) 選擇性。 包含要套用彙總函式之報表項目的資料集、群組或資料區的名稱。 如果未指定 scope ,則使用目前的範圍。
遞迴
(列舉型別) 選擇性。 Simple
(預設值) 或 RdlRecursive
。 指定是否要以遞迴方式執行彙總。
傳回類型
十進位運算式會傳回 Decimal
,所有其他運算式都會傳回 Double
。
備註
運算式中指定的資料集必須具有相同的資料類型。 若要將具有多個數值資料類型的資料轉換成相同的資料類型,請使用 CInt
、CDbl
或 CDec
等轉換函數。 如需詳細資訊,請參閱 類型轉換函數。
scope 的值必須是字串常數,而且不得為運算式。 如果是未指定其他彙總的外部彙總, scope 必須參考目前的範圍或是包含的範圍。 如果是彙總的彙總,巢狀彙總可以指定子範圍。
Expression 可以包含巢狀彙總函式的呼叫,其中包含下列例外和條件:
巢狀彙總的Scope 必須與外部彙總的範圍相同或是由外部彙總的範圍所限制。 如果是運算式中的所有相異範圍,一個範圍必須與所有其他範圍之間具有子關聯性。
巢狀彙總的Scope 不得為資料集的名稱。
運算式 不得包含
First
、Last
、Previous
或 函RunningValue
式。Expression 不得包含指定 recursive的巢狀彙總。
如需詳細資訊,請參閱彙總函式參考 (報表產生器和 SSRS) 和總計、彙總與內建集合的運算式範圍 (報表產生器和 SSRS)。
如需遞迴彙總的詳細資訊,請參閱建立遞迴階層群組 (報表產生器和 SSRS)。
範例
下列兩個程式碼範例提供 Order
群組或資料區中行項目總計的總和。
=Sum(Fields!LineTotal.Value, "Order")
' or
=Sum(CDbl(Fields!LineTotal.Value), "Order")
範例
在具有巢狀資料列群組 Category 和 Subcategory 以及巢狀資料行群組 Year 和 Quarter 的矩陣資料區域中,屬於最內部的資料列和資料行群組的資料格中,下列運算式會評估為所有季和所有子類別目錄中的最大值。
=Max(Sum(Fields!Sales.Value))
另請參閱
報表中的運算式用法 (報表產生器及 SSRS)
運算式範例 (報表產生器及 SSRS)
運算式中的資料類型 (報表產生器及 SSRS)
總計、彙總與內建集合的運算式範圍 (報表產生器及 SSRS)