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

Hubungkan dengan klausa untuk mendapatkan puncak hierarki

Oracle memiliki LEVEL kolom semu yang dapat Anda gunakan:

SELECT
  myTable.ID,
  myTable.ParentID
FROM myTable
WHERE LEVEL = 1
CONNECT BY PRIOR myTable.ID = myTable.ParentID

Untuk menemukan nilai tingkat atas (akar) dari tingkat mana pun, awali nama kolom dengan CONNECT_BY_ROOT operator:

SELECT
  myTable.ID,
  myTable.ParentID,
  CONNECT_BY_ROOT myTable.ID AS "Top Level ID"
FROM myTable
CONNECT BY PRIOR myTable.ID = myTable.ParentID


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. log pemicu oracle

  2. Apakah indeks yang dipartisi secara global lebih baik (lebih cepat) daripada indeks yang tidak dipartisi?

  3. Bagaimana saya bisa mengubah NLS_DATE_FORMAT di PHP

  4. Perbedaan antara WITH klausa dan subquery?

  5. Oracle PL/SQL:cara mendapatkan jejak tumpukan, nama paket, dan nama prosedur