Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Output yang diinginkan dengan data tabel yang diberikan

Tidak, itu tidak dapat dilakukan dengan PIVOT , tapi bisa dilakukan dengan UNPIVOT :

SELECT
  Pk,
  "Key",
  value
FROM Testing
UNPIVOT (
  value FOR "Key" IN (C1, C2)
)

Dan ketika UNPIVOT tidak tersedia, saya sering melakukan unpivot seperti ini:

SELECT
  t.Pk,
  x."Key",
  CASE x."Key"
    WHEN 'C1' THEN t.C1
    WHEN 'C2' THEN t.C2
  END AS value
FROM Testing t
CROSS JOIN (
  SELECT 'C1' AS "Key" FROM DUAL UNION ALL
  SELECT 'C2' FROM DUAL
) x



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ubah tabel untuk mengubah nilai default kolom

  2. cara terbaik untuk memigrasi aplikasi formulir windows dari server sql ke oracle

  3. JDBC terhubung ke database Oracle dengan SSL

  4. Bug Oracle saat menambahkan kolom yang tidak dapat dibatalkan dengan default

  5. Oracle APEX - SQL - Membuat Sejarah Berurutan dan Menghitung Hari Antara Setiap Fase