Ecco un bell'articolo sulle diverse tecniche di aggregazione di stringhe .
Posso aggiungere ancora un altro metodo (basato su XML):
select rtrim(
extract(
sys_xmlagg(
xmlelement("X",ename||', ')
),
'/ROWSET/X/text()'
).getstringval(),
', '
)
from emp;
E nella versione 2 di 11g abbiamo finalmente integrato LISTAGG funzione.