Maison > base de données > tutoriel mysql > Comment concaténer les valeurs de colonnes de plusieurs lignes dans Oracle SQL ?

Comment concaténer les valeurs de colonnes de plusieurs lignes dans Oracle SQL ?

Mary-Kate Olsen
Libérer: 2025-01-23 15:01:12
original
1028 Les gens l'ont consulté

How to Concatenate Column Values from Multiple Rows in Oracle SQL?

Oracle SQL : combinaison de valeurs de colonnes sur plusieurs lignes

Ce guide montre comment concaténer les valeurs de colonnes de plusieurs lignes dans une base de données Oracle à l'aide de SQL. Nous explorerons des méthodes efficaces, notamment les fonctions d'agrégation et la fonction LISTAGG.

Une approche efficace utilise la fonction LISTAGG :

SELECT pid, LISTAGG(Desc, ' ') WITHIN GROUP (ORDER BY seq) AS description
FROM TableB
GROUP BY pid;
Copier après la connexion

Cette requête concatène intelligemment les valeurs Desc de TableB pour chaque PID distinct, en utilisant un espace comme séparateur. La sortie regroupe les résultats par PID, fournissant une seule chaîne concaténée pour chacun.

Pour intégrer les PID valeurs de TableA, une jointure est nécessaire :

SELECT a.PID, b.description
FROM TableA a
INNER JOIN (SELECT pid, LISTAGG(Desc, ' ') WITHIN GROUP (ORDER BY seq) AS description
FROM TableB
GROUP BY pid) b
ON a.PID = b.pid;
Copier après la connexion

Cette requête jointe fournit le résultat final : chaque ligne affiche le PID de TableA à côté de sa chaîne Desc concaténée correspondante de TableB.

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!

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