Weblogs Código

RecorteX

» plsql
73 usuarios y 244 recortes de código
Usuario

Contraseña
Crear cuenta
Estás viendo los recortes de la etiqueta plsql

RSS
Recortes: 2

Etiquetas relacionadas:
oracle
concatenar
sql
ebs
texto
ebusiness-suite
groupby

Concatenar varias filas en una columna con Oracle

Función para poder seleccionar el texto de varias filas en una única columna. Funciona como una función de grupo.
 
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,OPERATIONS
 
Encontrado en http://orafaq.com/faq/map_rows_to_a_column

Establecer ORG_ID en PL/SQL para e-business suite de Oracle

Escribe aquí el texto
Útil cuando tienes que establecer la organización para la consulta a través de vistas en e-business suite.

 
BEGIN
    dbms_application_info.set_client_info('142');
END;
 

Otra versión para hacer lo mismo

 
DECLARE
   v_org_id NUMBER := 142;
BEGIN
   apps.FND_CLIENT_INFO.set_org_context(v_org_id);
END;
 
Proyecto: Juanjo Navarro, 2006 - Diseño: Albin