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

Menggabungkan beberapa baris menjadi satu baris tanpa agregasi [Oracle]

Jika Anda tahu Anda memiliki tiga kolom, sebutkan dan gabungkan:

select max(case when seqnum = 1 then type end) as type1,
       max(case when seqnum = 1 then date end) as date1,
       max(case when seqnum = 1 then amount end) as amount1,
       max(case when seqnum = 2 then type end) as type2,
       max(case when seqnum = 2 then date end) as date2,
       max(case when seqnum = 2 then amount end) as amount2,
       max(case when seqnum = 3 then type end) as type3,
       max(case when seqnum = 3 then date end) as date3,
       max(case when seqnum = 3 then amount end) as amount3       
from (select t.*, rownum as seqnum
      from t
     ) t;

Jika Anda tidak tahu jumlah kolom yang dikembalikan, maka Anda perlu menggunakan SQL dinamis (execute immediate ).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. .masalah penyisipan JDBC berikutnya

  2. buat tabel dengan sequence.nextval di oracle

  3. Jalankan Untuk Setiap Tabel di PLSQL

  4. Membuat pemicu yang menghasilkan nilai kolom ID sebelum dimasukkan saat tabel baru dibuat

  5. Prosedur Tersimpan Oracle Random Number Generator tanpa menggunakan DBMS_RANDOM