Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment récupérer les données de deux colonnes au format A, B dans Oracle

Tim Hall a une jolie liste canonique des techniques d'agrégation de chaînes dans Oracle.

La technique que vous utilisez dépend d'un certain nombre de facteurs, notamment la version d'Oracle et si vous recherchez une solution purement SQL. Si vous utilisez Oracle 11.2, je suggérerais probablement d'utiliser LISTAGG

SELECT column1, listagg( column2, ',' ) WITHIN GROUP( order by column2 )
  FROM table_name
 GROUP BY column1

Si vous utilisez une version antérieure d'Oracle, en supposant que vous n'avez pas besoin d'une solution purement SQL, je préférerais généralement utiliser l'approche de la fonction d'agrégation définie par l'utilisateur.