sql >> Databáze >  >> RDS >> Oracle

Převést řádky na sloupce Oracle

zkuste toto pro vygenerování skriptu:

select 'select '||FILE_ID||' FILE_ID,'||
  ltrim(sys_connect_by_path('REC_FLD_'||FIELD_NUMBER||' "'||FIELD_NAME||'"',','),',')||
  ' from RESPONSE_DETAILS where FILE_ID=' ||FILE_ID||';'
  from (select t.*,count(*) over (partition by FILE_ID) cnt from RESPONSE_METADATA t)
 where cnt=FIELD_NUMBER start with FIELD_NUMBER=1 
connect by prior FILE_ID=FILE_ID and prior FIELD_NUMBER=FIELD_NUMBER-1

Přidány dvojité uvozovky, protože některé názvy sloupců jsou vyhrazeny například „DESC“




  1. Pokus o získání součtu odlišných hodnot pro odlišné soubory pro různé verze softwaru

  2. Spouštěče vs. JPA @PrePersist pro vytváření a aktualizaci časových razítek pro a proti

  3. Vnořte model Nest Json do tabulky SQL

  4. Nelze vytvořit více vlastních db tabulek při aktivaci wp Plugin