Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Applies to: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Produceert een tabel waarmee de inhoud van de invoertabel wordt samengevoegd.
Syntax
T| summarize [ SummarizeParameters ] [[Column=] Aggregation [, ...]] [by [Column=] GroupExpression [, ...]]
Learn more about syntax conventions.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| Column | string |
De naam voor de resultaatkolom. Standaard ingesteld op een naam die is afgeleid van de expressie. | |
| Aggregation | string |
✔️ | A call to an aggregation function such as count() or avg(), with column names as arguments. |
| GroupExpression | scalar | ✔️ | Een scalaire expressie die naar de invoergegevens kan verwijzen. De uitvoer heeft net zoveel records als er afzonderlijke waarden van alle groepsexpressies zijn. |
| SummarizeParameters | string |
Zero or more space-separated parameters in the form of Name=Value that control the behavior. See supported parameters. |
Note
When the input table is empty, the output depends on whether GroupExpression is used:
- If GroupExpression isn't provided, the output is a single (empty) row.
- If GroupExpression is provided, the output has no rows.
Supported parameters
| Name | Description |
|---|---|
hint.num_partitions |
Hiermee geeft u het aantal partities op dat wordt gebruikt om de querybelasting op clusterknooppunten te delen. See shuffle query |
hint.shufflekey=<key> |
De shufflekey query deelt de querybelasting op clusterknooppunten met behulp van een sleutel om gegevens te partitioneren. See shuffle query |
hint.strategy=shuffle |
De shuffle strategiequery deelt de querybelasting op clusterknooppunten, waarbij elk knooppunt één partitie van de gegevens verwerkt. See shuffle query |
Returns
De invoerrijen worden gerangschikt in groepen met dezelfde waarden van de by expressies. Vervolgens worden de opgegeven aggregatiefuncties berekend over elke groep, waardoor er een rij voor elke groep wordt geproduceerd. Het resultaat bevat de by kolommen en ook ten minste één kolom voor elke berekende statistische functie. (Sommige aggregatiefuncties retourneren meerdere kolommen.)
Het resultaat heeft zoveel rijen als er verschillende combinaties van by waarden zijn (die mogelijk nul zijn). Als er geen groepssleutels zijn opgegeven, heeft het resultaat één record.
Gebruik bin() om een overzicht te maken van meerdere bereiken met numerieke waarden om bereiken te beperken tot discrete waarden.
Note
- Hoewel u willekeurige expressies kunt opgeven voor zowel de aggregatie- als groeperingsexpressies, is het efficiënter om eenvoudige kolomnamen te gebruiken of
bin()toe te passen op een numerieke kolom. - De automatische bins per uur voor datum/tijd-kolommen worden niet meer ondersteund. Gebruik in plaats daarvan expliciet binning. Bijvoorbeeld
summarize by bin(timestamp, 1h).
Standaardwaarden van aggregaties
De volgende tabel bevat een overzicht van de standaardwaarden van aggregaties:
| Operator | Default value |
|---|---|
count(), , countif()dcount(), dcountif(), count_distinct(), , sum(), , sumif()variance()varianceif()stdev()stdevif() |
0 |
make_bag(), , make_bag_if()make_list(), make_list_if(), , , make_set()make_set_if() |
lege dynamische matrix ([]) |
| All others | null |
Note
Wanneer u deze aggregaties toepast op entiteiten die null-waarden bevatten, worden de null-waarden genegeerd en worden ze niet meegenomen in de berekening. See Examples.
Examples
The examples in this article use publicly available tables in the help cluster, such as the
StormEventstable in the Samples database.
The examples in this article use publicly available tables, such as the
Weathertable in the Weather analytics sample gallery. Mogelijk moet u de tabelnaam in de voorbeeldquery wijzigen zodat deze overeenkomt met de tabel in uw werkruimte.
In het volgende voorbeeld wordt bepaald welke unieke combinaties en StateEventType stormen er zijn die tot directe letsels hebben geleid. Er zijn geen aggregatiefuncties, alleen groeperen op sleutels. In de uitvoer worden alleen de kolommen voor deze resultaten weergegeven.
StormEvents
| where InjuriesDirect > 0
| summarize by State, EventType
Output
In de volgende tabel worden alleen de eerste vijf rijen weergegeven. Als u de volledige uitvoer wilt zien, voert u de query uit.
| State | EventType |
|---|---|
| TEXAS | Thunderstorm Wind |
| TEXAS | Flash Flood |
| TEXAS | Winter Weather |
| TEXAS | High Wind |
| TEXAS | Flood |
| ... | ... |
In het volgende voorbeeld worden de minimale en maximale zware regenstormen in Hawaï gevonden. Er is geen group-by-component, dus er is slechts één rij in de uitvoer.
StormEvents
| where State == "HAWAII" and EventType == "Heavy Rain"
| project Duration = EndTime - StartTime
| summarize Min = min(Duration), Max = max(Duration)
Output
| Min | Max |
|---|---|
| 01:08:00 | 11:55:00 |
In het volgende voorbeeld wordt het aantal unieke storm gebeurtenistypen voor elke status berekend en worden de resultaten gesorteerd op het aantal unieke stormtypen:
StormEvents
| summarize TypesOfStorms=dcount(EventType) by State
| sort by TypesOfStorms
Output
In de volgende tabel worden alleen de eerste vijf rijen weergegeven. Als u de volledige uitvoer wilt zien, voert u de query uit.
| State | TypesOfStorms |
|---|---|
| TEXAS | 27 |
| CALIFORNIA | 26 |
| PENNSYLVANIA | 25 |
| GEORGIA | 24 |
| ILLINOIS | 23 |
| ... | ... |
In het volgende voorbeeld wordt een histogram met stormgebeurtenissen berekend die langer dan 1 dag stormen hadden. Omdat Duration veel waarden heeft, gebruikt u bin() om de waarden te groeperen in intervallen van 1 dag.
StormEvents
| project EventType, Duration = EndTime - StartTime
| where Duration > 1d
| summarize EventCount=count() by EventType, Length=bin(Duration, 1d)
| sort by Length
Output
| EventType | Length | EventCount |
|---|---|---|
| Drought | 30.00:00:00 | 1646 |
| Wildfire | 30.00:00:00 | 11 |
| Heat | 30.00:00:00 | 14 |
| Flood | 30.00:00:00 | 20 |
| Heavy Rain | 29.00:00:00 | 42 |
| ... | ... | ... |
In het volgende voorbeeld ziet u de standaardwaarden van aggregaties wanneer de invoertabel leeg is. De summarize operator wordt gebruikt om de standaardwaarden van de aggregaties te berekenen.
Wanneer de invoer van summarize operator ten minste één lege group-by-sleutel heeft, is het resultaat ook leeg.
Wanneer de invoer van summarize operator geen lege group-by-sleutel heeft, zijn de standaardwaarden van de aggregaties die worden gebruikt in de summarize Zie Standaardwaarden van aggregatiesvoor meer informatie.
datatable(x:long)[]
| summarize any_x=take_any(x), arg_max_x=arg_max(x, *), arg_min_x=arg_min(x, *), avg(x), buildschema(todynamic(tostring(x))), max(x), min(x), percentile(x, 55), hll(x) ,stdev(x), sum(x), sumif(x, x > 0), tdigest(x), variance(x)
Output
| any_x | arg_max_x | arg_min_x | avg_x | schema_x | max_x | min_x | percentile_x_55 | hll_x | stdev_x | sum_x | sumif_x | tdigest_x | variance_x |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| NaN | 0 | 0 | 0 | 0 |
Het resultaat van avg_x(x) is NaN vanwege het delen door 0.
datatable(x:long)[]
| summarize count(x), countif(x > 0) , dcount(x), dcountif(x, x > 0)
Output
| count_x | countif_ | dcount_x | dcountif_x |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
datatable(x:long)[]
| summarize make_set(x), make_list(x)
Output
| set_x | list_x |
|---|---|
| [] | [] |
De gemiddelde statistische waarde telt alleen de niet-null-waarden op en telt alleen die waarden in de berekening, waarbij null-waarden worden genegeerd.
range x from 1 to 4 step 1
| extend y = iff(x == 1, real(null), real(5))
| summarize sum(y), avg(y)
Output
| sum_y | avg_y |
|---|---|
| 15 | 5 |
De functie standaardaantal bevat null-waarden in het aantal:
range x from 1 to 2 step 1
| extend y = iff(x == 1, real(null), real(5))
| summarize count(y)
Output
| count_y |
|---|
| 2 |
range x from 1 to 2 step 1
| extend y = iff(x == 1, real(null), real(5))
| summarize make_set(y), make_set(y)
Output
| set_y | set_y1 |
|---|---|
| [5.0] | [5.0] |