Funzioni Generatore report - Funzione CountDistinct in un report impaginato (Generatore report)

Si applica a:✅ Generatore di report Microsoft (SSRS) ✅ Power BI Report Builder ✅ Report Designer in SQL Server Data Tools

Restituisce un conteggio di tutti i valori distinti non Null specificati dall'espressione, in un report impaginato, valutati nel contesto dell'ambito specificato.

Nota

È possibile creare e modificare file di definizioni di report impaginati (con estensione rdl) in Generatore report di Microsoft, Power BI Report Builder e Progettazione report di SQL Server Data Tools.

Sintassi

  
CountDistinct(expression, scope, recursive)  

Parametri

expression
(Variant) Espressione su cui eseguire l'aggregazione.

ambito
(String) Facoltativo. Nome di un set di dati, gruppo o area dati che contiene gli elementi del report a cui applicare la funzione di aggregazione. Se si omette scope , viene usato l'ambito corrente.

recursive
(Enumerated Type) Facoltativo. Simple (impostazione predefinita) o RdlRecursive. Specifica se eseguire l'aggregazione in modo ricorsivo.

Tipo restituito

Restituisce un valore Integer.

Osservazioni:

Il valore di scope deve essere una costante di tipo stringa e non può essere un'espressione. Per aggregazioni o aggregazioni esterne che non specificano altre aggregazioni, scope deve fare riferimento all'ambito corrente o a un ambito contenitore. Per le aggregazioni di aggregazioni, le aggregazioni nidificate possono specificare un ambito figlio.

Expression può contenere chiamate alle funzioni di aggregazione nidificate con le eccezioni e le condizioni seguenti:

  • Scope per le aggregazioni nidificate deve corrispondere o essere contenuto nell'ambito dell'aggregazione esterna. Per tutti gli ambiti distinti nell'espressione, un ambito deve essere in una relazione figlio con tutti gli altri ambiti.

  • Scope per le aggregazioni nidificate non può essere il nome di un set di dati.

  • Expression non deve contenere funzioni First, Last, Previouso RunningValue .

  • Expression non deve contenere aggregazioni nidificate che specificano recursive.

Per altre informazioni, vedere Riferimento a funzioni di aggregazione (Generatore report e SSRS) e Ambito di espressioni per totali, aggregazioni e raccolte predefinite (Generatore report e SSRS).

Per altre informazioni sulle aggregazioni ricorsive, vedere Creazione di gruppi di gerarchie ricorsive (Generatore report e SSRS).

Esempio

L'esempio di codice seguente illustra un'espressione che calcola il numero di valori non Null univoci di Size per l'ambito predefinito e per un ambito di gruppo padre. L'espressione viene aggiunta a una riga di una cella che appartiene al gruppo figlio GroupbySubcategory. Il gruppo padre è GroupbyCategory. L'espressione visualizza i risultati per GroupbySubcategory (ambito predefinito) e quindi per GroupbyCategory (ambito del gruppo padre).

Nota

Le espressioni non devono contenere ritorni a capo e interruzioni di riga, che sono inclusi nell'esempio di codice per supportare i renderer della documentazione. Se si copia l'esempio seguente, rimuovere i ritorni a capo da ogni riga.

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

Vedi anche

Utilizzo delle espressioni nei report (Generatore di report e SSRS)
Esempi di espressioni (Generatore di report e SSRS)
Tipi di dati nelle espressioni (Generatore di report e SSRS)
Ambito di espressioni per totali, aggregazioni e raccolte predefinite (Generatore di report e SSRS)