La fonction LISTAGG concatène un ensemble de lignes de données en une chaîne, en utilisant le caractère de concaténation spécifié pour séparer les éléments. L'utilisation comprend : 1. Joindre toutes les valeurs dans une colonne ; 2. Séparer les valeurs à l'aide de caractères de jointure ; 3. Ignorer les valeurs NULL ; 4. Partitionner par groupe ;
Utilisation de la fonction LISTAGG dans Oracle
Définition :
La fonction LISTAGG concatène un ensemble de lignes de données en une chaîne et sépare les éléments à l'aide du connecteur spécifié.
Syntaxe :
<code>LISTAGG(expression, delimiter [IGNORE NULLS]) OVER (PARTITION BY partition_expression ORDER BY order_expression)</code>
Paramètres :
Utilisation :
La fonction LISTAGG est généralement utilisé pour combiner plusieurs lignes en une seule chaîne pour un affichage ou un traitement plus facile. Voici ses utilisations typiques :
1. Joignez toutes les valeurs dans une colonne
<code>SELECT LISTAGG(name) FROM table_name;</code>
2 Séparez les valeurs à l'aide de jointeurs
<code>SELECT LISTAGG(name, ', ') FROM table_name;</code>
3. . Partitionner par groupe
<code>SELECT LISTAGG(name IGNORE NULLS) FROM table_name;</code>
<code>SELECT LISTAGG(name) OVER (PARTITION BY group_id) FROM table_name;</code>
Le tableau suivant montre l'exemple d'utilisation des fonctions Listagg dans la table des employés :
ID d'employé nom.
1 | |
---|---|
2 | Jane |
3 | David |
Utilisez la fonction LISTAGG pour joindre tous les noms d'employés : | <code>SELECT LISTAGG(name) OVER (ORDER BY name) FROM table_name;</code> Copier après la connexion | Résultat :
<code>John, Jane, David</code>
Résultats :
<code>SELECT LISTAGG(name, ', ') FROM employees;</code>
Partitionner par département et connecter les noms des employés pour chaque département :
<code>John, Jane, David</code>
Résultats :
<code>SELECT LISTAGG(name) OVER (PARTITION BY department) FROM employees;</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!