傳回表達式所指定之所有相異非 Null 值的計數,該值是在指定範圍的內容中評估的。
備註
您可以在報表產生器及 SQL Server Data Tools 的報表設計師中建立和修改報表定義 (.rdl)。 每個撰寫環境提供不同的方式來建立、開啟及儲存報表和相關專案。 如需詳細資訊,請至 microsoft.com 網站上查看 報表設計師和報表產生器 (SSRS) 的報表設計。
語法
CountDistinct(expression, scope, recursive)
參數
表示式
(Variant) 要執行匯總的運算式。
範圍
(String) 選擇性。 包含要套用聚合函數之報表項目的數據集、群組或數據區名稱。 如果未指定 scope ,則會使用目前的範圍。
遞迴
(列舉類型)可選。
Simple (預設值) 或 RdlRecursive。 指定是否以遞歸方式執行匯總。
返回類型
傳回 Integer。
備註
範圍的值必須是字串常數,而且不能是表達式。 對於外部匯總或未指定其他匯總的匯總,範圍 必須參考目前的範圍或所包含的範圍。 針對聚合的聚合,巢狀聚合可以指定子範圍。
運算式 可以包含巢狀聚合函數的呼叫,但有下列例外狀況和條件:
巢狀匯總的範圍必須與外部匯總的範圍相同,或包含在其中。 針對表達式中的所有不同範圍,一個範圍必須位於與所有其他範圍的子關聯性中。
巢狀匯總的範圍不能是數據集的名稱。
表達式 不得包含
First、Last、Previous或RunningValue函式。表達式 不能包含指定 遞歸的巢狀匯總。
如需詳細資訊,請參閱聚合函數參考(報表產生器及 SSRS)和總計、匯總和內建集合的運算式範圍(報表產生器及 SSRS)。
如需遞歸匯總的詳細資訊,請參閱建立遞歸階層群組(報表產生器及 SSRS)。
範例
下列程式代碼範例顯示表達式,其會計算預設範圍和父群組範圍之 唯一非 Null 值 Size 的數目。 表達式會加入至屬於子群組 GroupbySubcategory 的行中的儲存格。 父群組為 GroupbyCategory。 表達式會顯示 GroupbySubcategory (預設範圍)的結果,然後顯示 GroupbyCategory (父群組範圍)的結果。
備註
表達式不應包含實際的歸位字元和換行符,這些僅在範例程式代碼中加入,是為了支援文件轉譯器的顯示功能。 如果您複製下列範例,請從每一行移除歸位字元。
="Distinct count (Subcategory): " & CountDistinct(Fields!Size.Value) &
"Distinct count (Category): " & CountDistinct(Fields!Size.Value,"GroupbyCategory")
另請參閱
報表中的運算式用法 (報表產生器及 SSRS)
運算式範例 (報表產生器及 SSRS)
運算式中的資料類型 (報表產生器及 SSRS)
總計、匯總和內建集合的表達式範圍(報表產生器及 SSRS)