dcountif() (agregační funkce)
Platí pro: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Odhaduje počet jedinečných hodnot výrazů pro řádky, ve kterých se predikát vyhodnotí jako true
.
Hodnoty Null se ignorují a nefaktorují do výpočtu.
Syntaxe
dcountif
(
výraz, predikát, [,
přesnost])
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Type | Požadováno | Popis |
---|---|---|---|
výraz | string |
✔️ | Výraz použitý pro výpočet agregace. |
predikát | string |
✔️ | Výraz použitý k filtrování řádků. |
přesnost | int |
Ovládání mezi rychlostí a přesností. Pokud není zadáno, výchozí hodnota je 1 . Viz přesnost odhadu podporovaných hodnot. |
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šechny nebo žádné řádky předávají Predicate
výraz.
Příklad
Tento příklad ukazuje, kolik typů událostí závažné bouře se stalo 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ů.
State | RůznéfatalEventy |
---|---|
KALIFORNIE | 12 |
TEXAS | 12 |
OKLAHOMA | 10 |
ILLINOIS | 9 |
KANSAS | 9 |
NEW YORK | 9 |
NEW JERSEY | 7 |
WASHINGTONSKÝ | 7 |
MICHIGAN | 7 |
MISSOURI | 7 |
... | ... |
Přesnost odhadu
Tato funkce používá variantu algoritmu HyperLogLog (HLL), který provede stochastický odhad kardinality sady. Algoritmus poskytuje "knoflík", který lze použít k vyvážení přesnosti a doby provádění na velikost paměti:
Přesnost | Chyba (%) | Počet položek |
---|---|---|
0 | 1.6 | 212 |
0 | 0,8 | 214 |
2 | 0,4 | 216 |
3 | 0,28 | 217 |
4 | 0,2 | 218 |
Poznámka:
Sloupec "entry count" je počet čítačů 1 bajtů v implementaci HLL.
Algoritmus obsahuje některá ustanovení pro dosažení dokonalého počtu (nula chyb), 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.
Svázaná chyba je pravděpodobnostní, nikoli teoretická mez. Hodnota je směrodatná odchylka rozdělení chyb (sigma) a 99,7 % odhadů bude mít relativní chybu pod 3 x sigma.
Následující obrázek znázorňuje funkci rozdělení pravděpodobnosti relativní chyby odhadu v procentech pro všechna podporovaná nastavení přesnosti: