make_set() (función de agregación)

Crea una dynamic matriz del conjunto de valores distintos que expr toma en el grupo.

Los valores NULL se omiten y no tienen en cuenta el cálculo.

Nota

Esta función se usa junto con el operador summarize.

Alias en desuso: makeset()

Syntax

make_set(expr [,maxSize])

Obtenga más información sobre las convenciones de sintaxis.

Parámetros

Nombre Tipo Requerido Descripción
expr string ✔️ Expresión usada para el cálculo de agregación.
Maxsize int Número máximo de elementos devueltos. El valor predeterminado y máximo es 1048576.

Nota

La versión en desuso tiene un límite de maxSize predeterminado de 128.

Devoluciones

Devuelve una dynamic matriz del conjunto de valores distintos que expr toma en el grupo. El criterio de ordenación de la matriz no está definido.

Sugerencia

Para contar solo valores distintos, use dcount() o count_distinct().

Ejemplo

Establecer desde una columna escalar

En el ejemplo siguiente se muestra el conjunto de estados agrupados con la misma cantidad de daño de recorte.

StormEvents 
| summarize states=make_set(State) by DamageCrops

La tabla de resultados que se muestra incluye solo las 10 primeras filas.

DamageCrops states
0 ["CAROLINA DEL NORTE","WISCONSIN","NEW YORK","ALASKA","DELAWARE","OKLAHOMA","INDIANA","ILLINOIS","MINNESOTA","SOUTH DAKOTA","TEXAS","UTAH","COLORADO","JERSEY","NEW JERSEY","VIRGINIA","CALIFORNIA","PENNSYLVANIA","MONTANA","WASHINGTON","WASHINGTON"OREGON","HAWAII","IDAHO","PUERTO RICO","MICHIGAN","FLORIDA","TENNESSE","GULF OF MEXICO","NEVADA","LOUISIANA","TENNESSEE","KENTUCKY","MISSISSIPPI","ALABAMA","GEORGIA","CAROLINA DEL SUR","OHIO","NEW MEXICO","ATLANTIC SOUTH","NEW MEXICO","NEW MEXICO","NEW MARYLANDE","ATLANTIC NORTH","NORTH DAKOTA","IOWA","NEBRASKA","WEST VIRGINIA","MARYLAND","KANSAS","MISSOURI","ARKANSAS","ARIZONA","MASSACHUSETTS","MAINE","CONNECTICUT","HAWAII","HAWAII WATERS","AMERICAN SAMOA","LAKE HURON","DISTRICT OF COLUMBIA","RHODE ISLAND","LAKE MICHIGAN","LAKE SUPERIOR","LAKE ST CLAIR","LAKE ERIE","LAKE ONTARIO","E PACIFIC","GULF OF ALASKA"]
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","MISSISSIPPI","WISCONSIN","NORTH DAKOTA"]
50000 ["CALIFORNIA","GEORGIA","OHIO","TEXAS","WEST VIRGINIA","KANSAS","MISSOURI","MISSISSIPPI","NEW MEXICO","IOWA","NORTH DAKOTA","OHIO","WISCONSIN","ILLINOIS","MINNESOTA","KENTUCKY"]
18000 ["WASHINGTON","WISCONSIN"]
107900000 ["CALIFORNIA"]
28900000 ["CALIFORNIA"]

Establecer desde la columna de matriz

En el ejemplo siguiente se muestra el conjunto de elementos de una matriz.

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"]
  • Use mv-expand el operador para la función opuesta.
  • make_set_if operator es similar a make_set, salvo que también acepta un predicado.