make_list() (função de agregação)
Cria uma dynamic
matriz de todos os valores de expr no grupo.
Os valores nulos são ignorados e não têm em conta o cálculo.
Nota
Esta função é utilizada em conjunto com o operador de resumo.
Aliases preteridos: makelist()
Syntax
make_list(
expr [,
maxSize])
Saiba mais sobre as convenções de sintaxe.
Parâmetros
Nome | Tipo | Necessário | Descrição |
---|---|---|---|
expr | dynamic |
✔️ | A expressão utilizada para o cálculo de agregação. |
maxSize | int |
O número máximo de elementos devolvidos. O valor predefinido e máximo é 1048576. |
Nota
A versão preterida tem um limite de tamanho máximo predefinido de 128.
Devoluções
Devolve uma dynamic
matriz de todos os valores de expr no grupo.
Se a entrada do summarize
operador não estiver ordenada, a ordem dos elementos na matriz resultante é indefinida.
Se a entrada do summarize
operador estiver ordenada, a ordem dos elementos na matriz resultante controla a entrada.
Dica
Utilize a array_sort_asc()
função ou array_sort_desc()
para criar uma lista ordenada por alguma chave.
Exemplos
Uma coluna
O exemplo seguinte faz uma lista de uma única coluna:
let shapes = datatable (name: string, sideCount: int)
[
"triangle", 3,
"square", 4,
"rectangle", 4,
"pentagon", 5,
"hexagon", 6,
"heptagon", 7,
"octagon", 8,
"nonagon", 9,
"decagon", 10
];
shapes
| summarize mylist = make_list(name)
Saída
mylist |
---|
["triângulo","quadrado","retângulo","pentágono","hexágono","heptagon","octágono","nonagon","decagon"] |
Utilizar a cláusula "by"
O exemplo seguinte executa uma consulta com a by
cláusula:
let shapes = datatable (name: string, sideCount: int)
[
"triangle", 3,
"square", 4,
"rectangle", 4,
"pentagon", 5,
"hexagon", 6,
"heptagon", 7,
"octagon", 8,
"nonagon", 9,
"decagon", 10
];
shapes
| summarize mylist = make_list(name) by isEvenSideCount = sideCount % 2 == 0
Saída
isEvenSideCount | mylist |
---|---|
false | ["triângulo","pentágono","heptagon","nonagon"] |
true | ["quadrado","retângulo","hexágono","octágono","decagon"] |
Empacotar um objeto dinâmico
Os exemplos seguintes mostram como empacotar um objeto dinâmico numa coluna antes de o tornar numa lista.
let shapes = datatable (name: string, sideCount: int)
[
"triangle", 3,
"square", 4,
"rectangle", 4,
"pentagon", 5,
"hexagon", 6,
"heptagon", 7,
"octagon", 8,
"nonagon", 9,
"decagon", 10
];
shapes
| extend d = bag_pack("name", name, "sideCount", sideCount)
| summarize mylist = make_list(d) by isEvenSideCount = sideCount % 2 == 0
Saída
isEvenSideCount | mylist |
---|---|
false | [{"name":"triangle","sideCount":3},{"name":"pentagon","sideCount":5},{"name":"heptagon","sideCount":7},{"name":"nonagon","sideCount":9}] |
true | [{"name":"square","sideCount":4},{"name":"retângulo","sideCount":4},{"name":"hexagon","sideCount":6},{"name":"octagon","sideCount":8},{"name":"decagon","sideCount":10}] |
Conteúdo relacionado
make_list_if
o operador é semelhante a make_list
, exceto que também aceita um predicado.
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários