Maison > base de données > tutoriel mysql > Comment puis-je créer des listes de valeurs séparées par des virgules à partir de groupes dans DB2 ?

Comment puis-je créer des listes de valeurs séparées par des virgules à partir de groupes dans DB2 ?

Linda Hamilton
Libérer: 2025-01-09 14:36:40
original
996 Les gens l'ont consulté

How Can I Create Comma-Separated Lists of Values from Groups in DB2?

Générer une sortie séparée par des virgules par groupe dans DB2

La fonction intégrée de DB2 LISTAGG peut concaténer les valeurs de colonnes avec le même regroupement, séparées par des virgules. Ceci est utile lorsque vous devez fusionner des données au sein de groupes.

Par exemple, supposons qu'un tableau contienne deux colonnes, ID et Rôle, et que trois lignes aient le même ID mais des valeurs de rôle différentes. L'objectif est de concaténer les valeurs de rôle pour chaque ID dans une liste séparée par des virgules.

La fonction LISTAGG introduite à partir de DB2 LUW 9.7 accomplit ceci :

<code class="language-sql">SELECT ID, LISTAGG(Role, ', ') AS Roles
FROM myTable
GROUP BY ID;</code>
Copier après la connexion

Cette requête générera le résultat souhaité :

<code>ID   Roles
----------
4555 2,3,4</code>
Copier après la connexion
Copier après la connexion

Il convient de noter que vous pouvez utiliser la clause WITHIN GROUP et l'instruction ORDER BY pour spécifier l'ordre dans lequel les valeurs sont concaténées. Cela permet un meilleur contrôle sur l'ordre dans lequel les valeurs sont répertoriées :

<code class="language-sql">SELECT ID, LISTAGG(Role, ', ') WITHIN GROUP (ORDER BY Role ASC) AS Roles
FROM myTable
GROUP BY ID;</code>
Copier après la connexion

Dans ce cas, le résultat sera :

<code>ID   Roles
----------
4555 2,3,4</code>
Copier après la connexion
Copier après la connexion

LISTAGG Fournit un moyen pratique d'agréger et de joindre des données dans DB2, permettant des opérations de chaîne efficaces basées sur des groupes.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal