Rekursi di SQL

Sistem manajemen database relasional berdasarkan SQL hanya cocok secara kondisional untuk kueri hierarkis atau rekursif. Sistem lain seperti ArangoDB lebih baik di sini (ada pembicaraan bagus tentang ini di GOTO 2016 ). Anda juga bisa menghasilkan kueri rekursif dalam SQL dengan bantuan ekspresi tabel umum dan dengan demikian membuat kueri tabel induk / anak klasik untuk semua leluhur dan keturunan.


Di PostgreSQL terlihat seperti ini, misalnya:

0672c4761d202a35a9059fa137ace7c3

Jika Anda ingin mendapatkan semua anak dari item_id tertentu, Anda menggunakan Ekspresi Tabel Umum:

0672c4761d202a35a9059fa137ace7c3

Menanyakan orang tua juga tidak masalah:

0672c4761d202a35a9059fa137ace7c3

Kembali