ORACLE - Concatenar varias lineas en una celda

Seguidamente un ejemplo de como juntar en una misma celda el contenido de varios registros.

Ejemplo de una table estudiantes con varios periodos

StudentId FromDate ToDate
28 01-Oct-08 31-Dec-07
28 01-Jan-09 31-Mar-09
34 01-Feb-11 30-Jun-11
35 01-Feb-11 30-Jun-11
36 01-Nov-10 31-Dec-10
36 01-Mar-11 31-May-11

Si queremos ensenar todos los periodos de cada uno de los estudiantes en una misma celda:

-- Juntar las varias celdas de las varias lineas en una misma celda
select f_student_id, wm_concat( date1)
from
   -- Juntar todos los pares (juntamos las celdas de la misma linea) FromDate//ToDate en una celda
   (select f_student_id, wm_concat(f_from_date || ' to ' || f_to_date) date1
   from npi_student_osite_periods
   group by f_student_id)
   --
group by f_student_id;

Comments

Popular posts from this blog

Oracle - duplicate fields in RECORD,TABLE or argument list are not permitted

Oracle - ORA-29282: invalid file ID, ORA-06512: at "SYS.UTL_FILE"