Partilhar via


make_set() (função de agregação)

Aplica-se a: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Cria uma dynamic matriz do conjunto de valores distintos que expr usa no grupo.

Os valores nulos são ignorados e não são considerados no cálculo.

Observação

Essa função é usada em conjunto com o operador summarize.

Apelidos obsoletos: makeset()

Sintaxe

make_set(expr [, maxSize])

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
expr string ✔️ A expressão usada para o cálculo de agregação.
maxSize int O número máximo de elementos retornados. O valor padrão e máximo é 1048576.

Observação

A versão obsoleta tem um limite maxSize padrão de 128.

Devoluções

Retorna uma dynamic matriz do conjunto de valores distintos que expr usa no grupo. A ordem de classificação da matriz é indefinida.

Dica

Para contar apenas valores distintos, use dcount() ou count_distinct().

Exemplo

Definir a partir de uma coluna escalar

O exemplo a seguir mostra o conjunto de estados agrupados com a mesma quantidade de danos à cultura.

StormEvents 
| summarize states=make_set(State) by DamageCrops

A tabela de resultados mostrada inclui apenas as primeiras 10 linhas.

DamageCrops states
0 ["CAROLINA DO NORTE","WISCONSIN","NOVA IORQUE","ALASCA","DELAWARE","OKLAHOMA","INDIANA","ILLINOIS","MINNESOTA","DAKOTA DO SUL","TEXAS","UTAH","COLORADO","VERMONT","NOVA JÉRSIA","VIRGÍNIA","CALIFÓRNIA","PENSILVÂNIA","MONTANA","WASHINGTON","OREGON","HAVAÍ","IDAHO","PORTO RICO","MICHIGAN","FLÓRIDA","WYOMING","GOLFO DO MÉXICO","NEVADA","LOUISIANA","TENNESSEE","KENTUCKY","MISSISSIPPI","ALABAMA","GEÓRGIA","CAROLINA DO SUL","OHIO","NOVO MÉXICO","ATLÂNTICO SUL","NOVO HAMPSHIRE","ATLÂNTICO NORTE","DAKOTA DO NORTE","IOWA","NEBRASKA","VIRGÍNIA OCIDENTAL","MARYLAND","KANSAS","MISSOURI","ARKANSAS","ARIZONA","MASSACHUSETTS","MAINE","CONNECTICUT","GUAM","ÁGUAS DO HAVAÍ","SAMOA AMERICANA","LAGO HURON","DISTRITO DE COLUMBIA","RHODE ISLAND","LAGO MICHIGAN","LAGO SUPERIOR","LAGO ST CLAIR","LAGO ERIE","LAGO ONTÁRIO","E PACÍFICO","GOLFO DO ALASCA"]
30000 ["TEXAS","NEBRASKA","IOWA","MINNESOTA","WISCONSIN"]
4.000.000 ["CALIFÓRNIA","KENTUCKY","DAKOTA DO NORTE","WISCONSIN","VIRGÍNIA"]
3000000 ["CALIFÓRNIA","ILLINOIS","MISSOURI","CAROLINA DO SUL","CAROLINA DO NORTE","MISSISSIPPI","DAKOTA DO NORTE","OHIO"]
14.000.000 ["CALIFÓRNIA","DAKOTA DO NORTE"]
400000 ["CALIFÓRNIA","MISSOURI","MISSISSIPPI","NEBRASKA","WISCONSIN","DAKOTA DO NORTE"]
50000 ["CALIFÓRNIA","GEÓRGIA","NEBRASKA","TEXAS","VIRGÍNIA OCIDENTAL","KANSAS","MISSOURI","MISSISSIPPI","NOVO MÉXICO","IOWA","DAKOTA DO NORTE","OHIO","WISCONSIN","ILLINOIS","MINNESOTA","KENTUCKY"]
18000 ["WASHINGTON","WISCONSIN"]
107900000 ["CALIFÓRNIA"]
28900000 ["CALIFÓRNIA"]

Definir a partir da coluna de matriz

O exemplo a seguir mostra o conjunto de elementos em uma 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 o operador para a função oposta.
  • make_set_if é semelhante a make_set, exceto que também aceita um predicado.