sql >> Base de Datos >  >> RDS >> Oracle

Oracle:forma de agregar concatenar una columna desagrupada en resultados agrupados

Aquí hay un buen artículo sobre diferentes técnicas de agregación de cadenas .

Puedo agregar otro método (basado en XML):

select rtrim(
         extract(
           sys_xmlagg(
             xmlelement("X",ename||', ')
           ),
           '/ROWSET/X/text()'
         ).getstringval(),
         ', '
       )
  from emp;

Y en la versión 2 de 11g finalmente tenemos incorporado LISTAGG función.