Udostępnij za pośrednictwem


Funkcja CountDistinct (program Report Builder 3.0 i usługi SSRS)

Zwraca liczbę wszystkich distinct nie-null wartości określonych przez wyrażenie oceniane w kontekście danego zakres.

Ostrzeżenie

Program Business Intelligence Development Studio umożliwia tworzenie i modyfikowanie definicji raportów (rdl) przy użyciu programów Report Builder 3.0 i Report Designer. Każde ze środowisk obsługuje różne sposoby tworzenia, otwierania i zapisywania raportów oraz powiązanych z nimi elementów. Aby uzyskać więcej informacji, zobacz temat Projektowanie raportów w programach Report Designer i Report Builder 3.0 (usługi SSRS) w witrynie sieci Web microsoft.com.

Składnia

CountDistinct(expression, scope, recursive)

Parametry

  • expression
    (Variant) wyrażenie, na którym należy wykonać agregacja.

  • scope
    (String) Opcjonalne.Nazwa zestawu danych, grupy lub obszaru danych zawierającego elementy raportu, do których ma zostać zastosowana funkcja agregująca.Jeśli scope nie jest określony, używany jest bieżący zakres.

  • recursive
    (Typ wyliczeniowy) opcjonalne.Simple(domyślnie) lub RdlRecursive.Określa, czy agregacja ma być wykonywana cyklicznie.

Zwracany typ

Zwraca Integer.

Uwagi

Wartość scope musi być ciąg stałe i nie może być wyrażeniem.Dla agregatów zewnętrznego lub agregatów, które nie określają innych agregatów scope musi odwoływać się do bieżącego zakres lub zakres zawierającego.W przypadku agregacji innych agregacji agregacje zagnieżdżone mogą określać zakres podrzędny.

Parametr Expression może zawierać wywołania zagnieżdżonych funkcji agregacji, przy czym obowiązują następujące wyjątki i warunki:

  • Scope dla agregatów zagnieżdżonych musi być taka sama jak lub zawartych przez zakres zewnętrznego wartość zagregowana.W przypadku wszystkich odmiennych zakresów w wyrażeniu jeden zakres musi być podrzędny w stosunku do wszystkich innych zakresów.

  • Scope dla agregatów zagnieżdżone nie może być nazwa zestawu danych.

  • Expressionnie może zawierać First, Last, Previous, lub RunningValue funkcji.

  • Parametr Expression nie może zawierać agregacji zagnieżdżonych określonych jako recursive.

Aby uzyskać więcej informacji, zobacz Kompendium funkcji agregujących (program Report Builder 3.0 i usługi SSRS) i Opis zakresu wyrażeń dla sum, wartości zagregowanych i kolekcji wbudowanych (program Report Builder 3.0 i usługi SSRS).

Więcej informacji o agregatów cyklicznych, zobacz Tworzenie grup hierarchii cyklicznej (program Report Builder 3.0 i usługi SSRS).

Przykład

Poniższy przykład kodu pokazuje wyrażenie oblicza liczbę unikatowych nie-null wartości Size dla domyślny zakres i zakresu grupy nadrzędnej.Wyrażenie jest dodawane do komórka w wierszu, należącego do grupy podrzędność GroupbySubcategory.Nadrzędna grupa jest GroupbyCategory.Wyrażenie wyświetla wyniki dla GroupbySubcategory (domyślny zakres) i następnie GroupbyCategory (zakres grupy nadrzędnego).

Ostrzeżenie

Wyrażenia nie mogą zawierać znaków powrotu karetki ani podziałów wiersza; te znaki umieszczono w przykładowym kodzie w celu obsługi modułów renderowania dokumentacji.W przypadku skopiowania poniższego przykładu należy usunąć z każdego wiersza znak powrotu karetki.

="Distinct count (Subcategory): " & CountDistinct(Fields!Size.Value) & 
"Distinct count (Category): " & CountDistinct(Fields!Size.Value,"GroupbyCategory")