make_list() (funzione di aggregazione)
Si applica a: ✅Microsoft Fabric✅
Crea una dynamic
matrice di tutti i valori di expr nel gruppo.
I valori Null vengono ignorati e non vengono inseriti nel calcolo.
Alias deprecati: makelist()
Sintassi
make_list(
expr [,
maxSize])
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
expr | dynamic |
✔️ | Espressione utilizzata per il calcolo dell'aggregazione. |
maxSize | int |
Numero massimo di elementi restituiti. Il valore predefinito e massimo è 1048576. |
Nota
La versione deprecata ha un limite maxSize predefinito di 128.
Valori restituiti
Restituisce una dynamic
matrice di tutti i valori di expr nel gruppo.
Se l'input dell'operatore summarize
non è ordinato, l'ordine degli elementi nella matrice risultante non è definito.
Se l'input dell'operatore summarize
viene ordinato, l'ordine degli elementi nella matrice risultante tiene traccia di quello dell'input.
Suggerimento
Usare la array_sort_asc()
funzione o array_sort_desc()
per creare un elenco ordinato in base a una chiave.
Esempi
Negli esempi di questa sezione viene illustrato come usare la sintassi per iniziare.
Una colonna
Nell'esempio seguente viene utilizzata la tabella dati, shapes
, per restituire un elenco di forme in una singola colonna.
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)
Output
mylist |
---|
["triangolo","quadrato","rettangolo","pentagono","esagono","heptagon","octagon","nonagon","decagon"] |
Utilizzo della clausola 'by'
Nell'esempio seguente viene utilizzata la funzione make_list
e la clausola by
per creare due elenchi di oggetti raggruppati in base al fatto che abbiano un numero pari o dispari di lati.
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
Output
isEvenSideCount | mylist |
---|---|
false | ["triangolo","pentagono","heptagon","nonagon"] |
true | ["square","rectangle","esagone","octagon","decagon"] |
Compressione di un oggetto dinamico
Negli esempi seguenti viene illustrato come comprimere un oggetto dinamico in una colonna prima di crearne un elenco. Restituisce una colonna con una tabella booleana isEvenSideCount
che indica se il conteggio laterale è pari o dispari e una colonna mylist
che contiene elenchi di contenitori compressi int ogni categoria.
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
Output
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":"rectangle","sideCount":4},{"name":"esagono","sideCount":6},{"name":"octagon","sideCount":8},{"name":"decagon","sideCount":10}] |
Contenuto correlato
- tipi di funzione Aggregazione a colpo d'occhio
make_list_if
- make_bag() (funzione di aggregazione)