Udostępnij za pośrednictwem


Funkcja DISTINCT (język DAX)

Zwraca jednokolumnową tabelę zawierającą unikatowe wartości z określonej kolumny.Innymi słowy, wartości zduplikowane są usuwane, a zwracane są tylko wartości unikatowe.

Ostrzeżenie

Tej funkcji nie można używać do zwracania wartości do komórki ani kolumny w arkuszu; funkcję DISTINCT należy zagnieździć w formule w celu uzyskania listy odmiennych wartości, które można przekazać do innej funkcji, a następnie zliczyć, zsumować lub użyć w innych operacjach.

Składnia

DISTINCT(<column>)

Parametry

Termin

Definicja

kolumna

Kolumna, z której mają zostać zwrócone unikatowe wartości.Ewentualnie wyrażenie, które zwraca kolumnę.

Wartość zwracana

Kolumna unikatowych wartości.

Uwagi

Na wyniki funkcji DISTINCT wpływa bieżący kontekst filtru.Na przykład w przypadku użycia formuły z poniższego przykładu w celu utworzenia miary wyniki zmieniają się po każdym przefiltrowaniu tabeli według określonego regionu lub okresu.Aby zapobiec wpływowi filtrowania na elementy zwracane na liście, należy użyć funkcji ALL w celu usunięcia filtrów z określonej kolumny lub tabeli, jak w następującym przykładzie:

=COUNTROWS(DISTINCT(ALL( InternetSales_USD[CustomerKey])))

Funkcje pokrewne

Funkcja VALUES przypomina funkcję DISTINCT; można jej również używać do zwracania unikatowych wartości i na ogół zwraca ona dokładnie te same wyniki co funkcja DISTINCT.Jednak w niektórych kontekstach funkcja VALUES zwraca jedną dodatkową wartość specjalną.Aby uzyskać więcej informacji, zobacz Funkcja VALUES (język DAX).

Przykład

Poniższa formuła zlicza unikatowych klientów, którzy wygenerowali zamówienia za pośrednictwem kanału internetowego (Unique Internet customers).W tabeli zilustrowano możliwe wyniki w przypadku dodania tej formuły do tabeli przestawnej.

=COUNTROWS(DISTINCT(InternetSales_USD[CustomerKey]))

Należy zwrócić uwagę, że listy wartości zwróconej przez funkcję DISTINCT nie można wkleić bezpośrednio do kolumny.Wyniki działania funkcji DISTINCT są natomiast przekazywane do innej funkcji, która zlicza, filtruje lub agreguje wartości przy użyciu tej listy.Aby maksymalnie uprościć przykład, tabela odmiennych wartości jest tu przekazywana do funkcji COUNTROWS.

Unique Internet customers

Etykiety kolumn

 

 

 

Etykiety wierszy

Accessories

Bikes

Clothing

Suma końcowa

2001

 

1013

 

1013

2002

 

2677

 

2677

2003

6792

4875

2867

9309

2004

9435

5451

4196

11377

Suma końcowa

15114

9132

6852

18484

Należy również zauważyć, że wyniki nie są addytywne.To znaczy, łączna liczba unikatowych klientów w 2003 jest nie Suma unikatowy klientów Accessories, Bikes i Clothing dla tego roku.Przyczyną jest to, że klient może być zliczany w wielu grupach.