count_distinctif() (funkcja agregacji) — (wersja zapoznawcza)

Warunkowo zlicza unikatowe wartości określone przez wyrażenie skalarne na grupę podsumowania lub łączną liczbę unikatowych wartości, jeśli grupa podsumowania zostanie pominięta. Zliczane są tylko rekordy, dla których predykat ocenia true wartość .

Uwaga

Ta funkcja jest używana w połączeniu z operatorem podsumowania.

Jeśli potrzebujesz tylko oszacowania liczby unikatowych wartości, zalecamy użycie funkcji agregacji dcountif zużywanej przez zasoby.

Uwaga

  • Ta funkcja jest ograniczona do 100 mln unikatowych wartości. Próba zastosowania funkcji w wyrażeniu zwracającym zbyt wiele wartości spowoduje wystąpienie błędu środowiska uruchomieniowego (HRESULT: 0x80DA0012).
  • Wydajność funkcji może być obniżona w przypadku działania na wielu źródłach danych z różnych klastrów.

Składnia

count_distinctif(Expr,Predykat)

Dowiedz się więcej o konwencjach składniowych.

Parametry

Nazwa Typ Wymagane Opis
Expr Wartość skalarna ✔️ Wyrażenie, którego unikatowe wartości mają być zliczane.
Predykat string ✔️ Wyrażenie używane do filtrowania rekordów do agregowania.

Zwraca

Wartość całkowita wskazująca liczbę unikatowych wartości wyrażenia na grupę podsumowania dla wszystkich rekordów, dla których predykat oblicza wartość true.

Przykład

W tym przykładzie pokazano, ile typów zdarzeń burzowych spowodowanych śmiercią miało miejsce w każdym stanie. Liczy się tylko zdarzenia burzy z liczbą zgonów niezerowych.

StormEvents
| summarize UniqueFatalEvents=count_distinctif(EventType,(DeathsDirect + DeathsIndirect)>0) by State
| where UniqueFatalEvents > 0
| top 5 by UniqueFatalEvents

Dane wyjściowe

Stan UniqueFatalEvents
TEXAS 12
KALIFORNII 12
OKLAHOMA 10
NEW YORK 9
KANSAS 9