sql >> Database >  >> RDS >> Oracle

Oracle Pivot - waarden converteren naar kolommen

Sinds de STUDY_VALUE kolom een ​​tekenreeks lijkt te zijn, moet u de max() . gebruiken of min() aggregatiefunctie op de waarden:

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)
);

Zie SQL Fiddle met demo



  1. MySQL - Persistente verbinding versus pooling van verbindingen

  2. Maximale rij in groep krijgen?

  3. Hoe kan ik een specifiek deel van de resultaten krijgen?

  4. Hoe kan ik er met PDO voor zorgen dat een UPDATE-statement is gelukt?