Se hai 11g Release 2 puoi usare Listagg
:
Select a, Listagg(b, ', ') Within Group ( Order By b )
From t
Group By a
Consente di ordinare i tuoi valori e viene già fornito con Oracle:
A1 B1, B2, B3
A2 B1, B4
Altrimenti puoi usare stragg
funzione di Tom Kyte, descritta in Rows to String.
Select a, stragg(b)
From t
Group By a
resi
A1 B1,B3,B2
A2 B1,B4