Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle Pivot - convertendo valores em colunas


Desde o STUDY_VALUE coluna parece ser uma string, você precisará usar o max() ou min() função agregada nos valores:
SELECT *
FROM  
(
  SELECT STUDYID, STUDY_VALUE, STUDY_PARAMETER
  FROM   STUDY_INFO
)
PIVOT 
(
  MAX(STUDY_VALUE)
  FOR (STUDY_PARAMETER) IN ('Age Unit' AS AGE_UNIT,
                              'Age Group' AS AGE_GROUP,
                              'Trial Type' AS TRIAL_TYPE)
);

Consulte SQL Fiddle with Demo