make_list() (sammansättningsfunktion)
Gäller för: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Skapar en dynamic
matris med alla värden för uttr i gruppen.
Null-värden ignoreras och tar inte hänsyn till beräkningen.
Not
Den här funktionen används tillsammans med operatorn summarize.
Inaktuella alias: makelist()
Syntax
make_list(
uttr [,
maxSize])
Läs mer om syntaxkonventioner.
Parametrar
Namn | Typ | Krävs | Beskrivning |
---|---|---|---|
uttr | dynamic |
✔️ | Uttrycket som används för aggregeringsberäkningen. |
maxSize | int |
Det maximala antalet element som returneras. Standardvärdet och maxvärdet är 1048576. |
Not
Den inaktuella versionen har standardvärdet maxSize gränsen på 128.
Returnerar
Returnerar en dynamic
matris med alla värden för uttr i gruppen.
Om indata till summarize
-operatorn inte sorteras är ordningen på elementen i den resulterande matrisen odefinierad.
Om indata till summarize
-operatorn sorteras spårar ordningen på elementen i den resulterande matrisen indata.
Dricks
Använd funktionen array_sort_asc()
eller array_sort_desc()
för att skapa en ordnad lista med någon nyckel.
Exempel
Exemplen i det här avsnittet visar hur du använder syntaxen för att komma igång.
En kolumn
I följande exempel används datatabellen shapes
för att returnera en lista över former i en enda kolumn.
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)
utdata
mylist |
---|
["triangel","kvadrat","rektangel","pentagon","hexagon","heptagon","oktagon","nonagon","decagon"] |
Använda by-satsen
I följande exempel används funktionen make_list
och by
-satsen för att skapa två listor med objekt grupperade efter om de har ett jämnt eller udda antal sidor.
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
utdata
isEvenSideCount | mylist |
---|---|
falsk | ["triangel","pentagon","heptagon","nonagon"] |
sann | ["square","rektangel","hexagon","oktagon","decagon"] |
Packa ett dynamiskt objekt
I följande exempel visas hur du paketera ett dynamiskt objekt i en kolumn innan du gör det till en lista. Den returnerar en kolumn med en boolesk tabell isEvenSideCount
som anger om antalet sidor är jämna eller udda och en mylist
kolumn som innehåller listor över packade påsar i varje kategori.
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
utdata
isEvenSideCount | mylist |
---|---|
falsk | [{"name":"triangle","sideCount":3},{"name":"pentagon","sideCount":5},{"name":"heptagon","sideCount":7},{"name":"nonagon","sideCount":9}] |
sann | [{"name":"square","sideCount":4},{"name":"rektangel","sideCount":4},{"name":"hexagon","sideCount":6},{"name":"octagon","sideCount":8},{"name":"decagon","sideCount":10}] |