dcountif() (aggregatiefunctie)
Van toepassing op: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel-
Maakt een schatting van het aantal afzonderlijke waarden van expr- voor rijen waarin predicaat resulteert in true
.
Null-waarden worden genegeerd en worden niet meegenomen in de berekening.
Notitie
Deze functie wordt gebruikt in combinatie met de operator summarize.
Syntaxis
dcountif
(
expr, predicaat, [,
nauwkeurigheid])
Meer informatie over syntaxisconventies.
Parameters
Naam | Type | Vereist | Beschrijving |
---|---|---|---|
expr- | string |
✔️ | De expressie die wordt gebruikt voor de aggregatieberekening. |
predicaat | string |
✔️ | De expressie die wordt gebruikt om rijen te filteren. |
nauwkeurigheid | int |
De besturing tussen snelheid en nauwkeurigheid. Als deze niet is opgegeven, wordt de standaardwaarde 1 . Zie Nauwkeurigheid van schattingen voor ondersteunde waarden. |
Retourneert
Geeft als resultaat een schatting van het aantal afzonderlijke waarden van expr voor rijen waarin predicaat resulteert in true
.
Fooi
dcountif()
kan een fout retourneren in gevallen waarin alle rijen of geen van de rijen de Predicate
-expressie doorgeeft.
Voorbeeld
In dit voorbeeld ziet u hoeveel soorten dodelijke stormen zich in elke staat hebben voorgedaan.
StormEvents
| summarize DifferentFatalEvents=dcountif(EventType,(DeathsDirect + DeathsIndirect)>0) by State
| where DifferentFatalEvents > 0
| order by DifferentFatalEvents
De weergegeven resultatentabel bevat alleen de eerste 10 rijen.
Staat | DifferentFatalEvents |
---|---|
CALIFORNIË | 12 |
TEXAS | 12 |
OKLAHOMA | 10 |
ILLINOIS | 9 |
KANSAS | 9 |
NEW YORK | 9 |
NEW JERSEY | 7 |
WASHINGTON | 7 |
MICHIGAN | 7 |
MISSOURI | 7 |
... | ... |
Nauwkeurigheid van schatting
Deze functie maakt gebruik van een variant van het HyperLogLog-algoritme (HLL), waarmee een stochastische schatting van de setkardinaliteit wordt uitgevoerd. Het algoritme biedt een 'knop' die kan worden gebruikt om de nauwkeurigheid en uitvoeringstijd per geheugengrootte te verdelen:
Nauwkeurigheid | Fout (%) | Aantal vermeldingen |
---|---|---|
0 | 1.6 | 212 |
1 | 0.8 | 214 |
2 | 0.4 | 216 |
3 | 0.28 | 217 |
4 | 0.2 | 218 |
Notitie
De kolom Aantal vermeldingen is het aantal 1-bytetellers in de HLL-implementatie.
Het algoritme bevat enkele voorzieningen voor het uitvoeren van een perfecte telling (nulfout), als de setkardinaliteit klein genoeg is:
- Wanneer het nauwkeurigheidsniveau wordt
1
, worden 1000 waarden geretourneerd - Wanneer het nauwkeurigheidsniveau wordt
2
, worden 8000 waarden geretourneerd
De foutgrens is probabilistisch, niet een theoretische gebonden. De waarde is de standaarddeviatie van foutverdeling (de sigma) en 99,7% van de schattingen hebben een relatieve fout van minder dan 3 x sigma.
In de volgende afbeelding ziet u de kansverdelingsfunctie van de relatieve schattingsfout, in percentages, voor alle ondersteunde nauwkeurigheidsinstellingen:
Verwante inhoud
- Aggregatiefunctietypen in één oogopslag
- dcount() (aggregatiefunctie)
- countif() (aggregatiefunctie)
- count_distinctif() (aggregatiefunctie)