sql >> データベース >  >> RDS >> Oracle

行を列に変換 Oracle

    これを試してスクリプトを生成してください:

    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
    

    一部の列名は「DESC」などのように予約されているため、二重引用符を追加しました




    1. MySQL番地あいまい検索

    2. テーブルをPostgreSQLとマージするための完全外部結合

    3. MacOSにXAMPPをインストールした後にMySQLサーバーに接続する方法

    4. SQL Server 2005 クエリ実行プランをクリアする方法