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

Pisahkan tabel menjadi kolom level yang berbeda

Sesuatu seperti:

SELECT topsettlunit,
       settleunit,
       CONNECT_BY_ROOT( topsettlunit ) AS level1,
       CASE LEVEL
         WHEN 1 THEN settleunit
         WHEN 2 THEN topsettlunit
       END AS level2,
       CASE LEVEL
         WHEN 2 THEN settleunit
       END AS level3
FROM   your_table
START WITH topsettlunit NOT IN ( SELECT settleunit FROM your_table )
CONNECT BY PRIOR settleunit = topsettlunit;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. desimal(s,p) atau angka(s,p)?

  2. Oracle - dapatkan format tanggal saat ini

  3. C# - Cara mendapatkan nilai tipe mentah oracle long

  4. Kueri SQL untuk menerjemahkan daftar angka yang cocok dengan beberapa rentang, ke daftar nilai

  5. Ekstrak data dari tipe yang ditentukan Pengguna melalui cx_Oracle