make_list() (fonction d’agrégation)
S’applique à : ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Crée un dynamic
tableau de toutes les valeurs d’expr dans le groupe.
Les valeurs Null sont ignorées et ne sont pas prises en compte dans le calcul.
Alias déconseillés : makelist()
Syntaxe
make_list(
expr [,
maxSize])
En savoir plus sur les conventions de syntaxe.
Paramètres
Nom | Type | Requise | Description |
---|---|---|---|
expr | dynamic |
✔️ | Expression utilisée pour le calcul d’agrégation. |
maxSize | int |
Nombre maximal d’éléments retournés. La valeur par défaut et maximale est 1048576. |
Remarque
La version déconseillée a une limite maxSize par défaut de 128.
Retours
Retourne un dynamic
tableau de toutes les valeurs d’expr dans le groupe.
Si l’entrée de l’opérateur summarize
n’est pas triée, l’ordre des éléments dans le tableau résultant n’est pas défini.
Si l’entrée de l’opérateur summarize
est triée, l’ordre des éléments dans le tableau résultant effectue le suivi de celui de l’entrée.
Conseil
Utilisez la ou array_sort_desc()
la array_sort_asc()
fonction pour créer une liste triée par une clé.
Exemples
Une colonne
L’exemple suivant montre comment extraire une liste d’une seule colonne :
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)
Sortie
mylist |
---|
["triangle »,"square »,"rectangle »,"pentagone »,"hexagon »,"heptagon »,"octagon »,"nonagon »,"decagon"] |
Utilisation de la clause 'by'
L’exemple suivant exécute une requête à l’aide de la by
clause :
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
Sortie
isEvenSideCount | mylist |
---|---|
false | ["triangle »,"pentagone »,"heptagon »,"nonagon"] |
true | ["square »,"rectangle »,"hexagon »,"octagon »,"decagon"] |
Empaquetage d’un objet dynamique
Les exemples suivants montrent comment empaquetage d’un objet dynamique dans une colonne avant d’en faire une liste.
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
Sortie
isEvenSideCount | mylist |
---|---|
false | [{"name » :"triangle »,"sideCount » :3},{"name » :"pentagone »,"sideCount » :5},{"name » :"heptagon »,"sideCount » :7},{"name » :"nonagon »,"sideCount » :9}] |
true | [{"name » :"square »,"sideCount » :4},{"name » :"rectangle »,"sideCount » :4},{"name » :"hexagon »,"sideCount » :6},{"name » :"octagon »,"sideCount » :8},{"name » :"decagon »,"sideCount » :10}] |
Contenu connexe
make_list_if
l’opérateur est similaire à make_list
, sauf qu’il accepte également un prédicat.