Share via


make_set() (sammansättningsfunktion)

Skapar en dynamic matris med uppsättningen med distinkta värden som uttr tar i gruppen.

Null-värden ignoreras och räknas inte in i beräkningen.

Anteckning

Den här funktionen används tillsammans med summarize-operatorn.

Inaktuella alias: makeset()

Syntax

make_set(expr [,maxSize])

Läs mer om syntaxkonventioner.

Parametrar

Namn Typ Obligatorisk Beskrivning
Uttryck string ✔️ Uttrycket som används för aggregeringsberäkningen.
Maxsize int Det maximala antalet element som returneras. Standardvärdet och maxvärdet är 1048576.

Anteckning

Den inaktuella versionen har en maxSize-standardgräns på 128.

Returer

Returnerar en dynamic matris med uppsättningen med distinkta värden som uttr tar i gruppen. Matrisens sorteringsordning är odefinierad.

Tips

Om du bara vill räkna distinkta värden använder du dcount() eller count_distinct().

Exempel

Ange från en skalär kolumn

I följande exempel visas en uppsättning tillstånd grupperade med samma mängd växtskador.

StormEvents 
| summarize states=make_set(State) by DamageCrops

Resultattabellen som visas innehåller bara de första 10 raderna.

DamageCrops Stater
0 ["NORTH CAROLINA","WISCONSIN","NEW YORK","ALASKA","DELAWARE","OKLAHOMA","INDIANA","ILLINOIS","MINNESOTA","SOUTH DAKOTA","TEXAS","UTAH","COLORADO","VERMONT","NEW JERSEY","VIRGINIA","KALIFORNIEN","PENNSYLVANIA","MONTANA","WASHINGTON","OREGON","HAWAII","IDAHO","PUERTO RICO","MICHIGAN","FLORIDA","WYOMING","MEXIKANSKA GOLFEN","NEVADA","LOUISIANA","TENNESSEE","KENTUCKY","MISSISSIPPI","ALABAMA","GEORGIA","SOUTH CAROLINA","OHIO","NEW MEXICO","ATLANTIC SOUTH","NEW HAMPSHIRE","ATLANTIC NORTH","NORTH DAKOTA","IOWA","NEBRASKA","WEST VIRGINIA","MARYLAND","KANSAS","MISSOURI","ARKANSAS","ARIZONA","MASSACHUSETTS","MAINE","CONNECTICUT","GUAM","HAWAII WATERS","AMERICAN SAMOA","LAKE HURON","DISTRICT OF COLUMBIA","RHODE ISLAND","LAKE MICHIGAN","LAKE SUPERIOR","LAKE ST CLAIR","LAKE ERIE","LAKE ONTARIO","E PACIFIC
30000 ["TEXAS","NEBRASKA","IOWA","MINNESOTA","WISCONSIN"]
4000000 ["CALIFORNIA","KENTUCKY","NORTH DAKOTA","WISCONSIN","VIRGINIA"]
3000000 ["CALIFORNIA","ILLINOIS","MISSOURI","SOUTH CAROLINA","NORTH CAROLINA","MISSISSIPPI","NORTH DAKOTA","OHIO"]
14000000 ["CALIFORNIA","NORTH DAKOTA"]
400000 ["CALIFORNIA","MISSOURI","MISSISSIPPI","NEBRASKA","WISCONSIN","NORTH DAKOTA"]
50000 ["CALIFORNIA","GEORGIA","NEBRASKA","TEXAS","WEST VIRGINIA","KANSAS","MISSOURI","MISSISSIPPI","NEW MEXICO","IOWA","NORTH DAKOTA","OHIO","WISCONSIN","ILLINOIS","MINNESOTA","KENTUCKY"]
18000 ["WASHINGTON","WISCONSIN"]
107900000 ["KALIFORNIEN"]
28900000 ["KALIFORNIEN"]

Ange från matriskolumn

I följande exempel visas uppsättningen element i en matris.

datatable (Val: int, Arr1: dynamic)
[
    1, dynamic(['A1', 'A2', 'A3']), 
    5, dynamic(['A2', 'C1']),
    7, dynamic(['C2', 'A3']),
    5, dynamic(['C2', 'A1'])
] 
| summarize Val_set=make_set(Val), Arr1_set=make_set(Arr1)
Val_set Arr1_set
[1,5,7] ["A1","A2","A3","C1","C2"]
  • Använd mv-expand operatorn för den motsatta funktionen.
  • make_set_if -operatorn liknar , förutom att make_setden även accepterar ett predikat.