CREATE OR REPLACE FUNCTION rowconcat(q IN VARCHAR2) RETURN VARCHAR2 IS ret VARCHAR2(4000); hold VARCHAR2(4000); cur sys_refcursor; BEGIN OPEN cur FOR q; LOOP FETCH cur INTO hold; EXIT WHEN cur%NOTFOUND; IF ret IS NULL THEN ret := hold; ELSE ret := ret || ',' || hold; END IF; END LOOP; RETURN ret; END; /Ejemplo
SQL> SELECT rowconcat('SELECT dname FROM dept') AS departments 2 FROM dual; DEPARTMENTS -------------------------------------------------------------------------------- ACCOUNTING,RESEARCH,SALES,OPERATIONSEncontrado en http://orafaq.com/faq/map_rows_to_a_column
Hola gracias por este aporte tengo dias buscando algo asi, lo probe y perfecto para lo que quiero pero como hago si le quiero agregar un where al select
‘SELECT dname FROM dept’