Sdílet prostřednictvím


dcountif() (agregační funkce)

Odhaduje počet jedinečných hodnot výrazu pro řádky, ve kterých se predikát vyhodnotí jako true.

Hodnoty Null se ignorují a nezapočítávají se do výpočtu.

Poznámka

Tato funkce se používá ve spojení s operátorem summarize.

Syntax

dcountif(výraz, predikát, [,přesnost])

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Typ Vyžadováno Popis
Výraz string ✔️ Výraz použitý pro výpočet agregace.
Predikátu string ✔️ Výraz použitý k filtrování řádků.
Přesnost int Řízení mezi rychlostí a přesností. Pokud není zadáno, výchozí hodnota je 1. Podporované hodnoty najdete v tématu Přesnost odhadu .

Návraty

Vrátí odhad počtu jedinečných hodnot výrazu pro řádky, ve kterých se predikát vyhodnotí jako true.

Tip

dcountif() může vrátit chybu v případech, kdy výrazem projdou Predicate všechny nebo žádné řádky.

Příklad

Tento příklad ukazuje, kolik typů závažných událostí bouře došlo v jednotlivých stavech.

StormEvents
| summarize DifferentFatalEvents=dcountif(EventType,(DeathsDirect + DeathsIndirect)>0) by State
| where DifferentFatalEvents > 0
| order by DifferentFatalEvents 

Zobrazená tabulka výsledků obsahuje pouze prvních 10 řádků.

Stav DifferentFatalEvents
KALIFORNIE 12
TEXAS 12
OKLAHOMA 10
ILLINOIS 9
KANSAS 9
NEW YORK 9
NEW JERSEY 7
WASHINGTON 7
MICHIGAN 7
MISSOURI 7
... ...

Přesnost odhadu

Tato funkce používá variantu algoritmu HyperLogLog (HLL), který provádí stochastický odhad kardinality sady. Algoritmus poskytuje "knoflík", který lze použít k vyvážení přesnosti a doby provádění podle velikosti paměti:

Přesnost Chyba (%) Počet položek
0 1.6 212
1 0.8 214
2 0.4 216
3 0,28 Č. 217
4 0.2 218

Poznámka

Sloupec "počet položek" je počet 1-bajtové čítače v implementaci HLL.

Algoritmus obsahuje několik ustanovení pro provedení dokonalého počtu (chyba nula), pokud je nastavená kardinalita dostatečně malá:

  • Pokud je 1úroveň přesnosti , vrátí se 1 000 hodnot.
  • Pokud je 2úroveň přesnosti , vrátí se 8 000 hodnot.

Chybová hranice je pravděpodobnostní, nikoli teoretická. Hodnota je směrodatnou odchylkou rozdělení chyb (sigma) a 99,7 % odhadů bude mít relativní chybu pod 3 x sigma.

Následující obrázek ukazuje funkci rozdělení pravděpodobnosti chyby relativního odhadu v procentech pro všechna podporovaná nastavení přesnosti:

Graf znázorňující distribuci chyb hll