Sistem pengurusan pangkalan data hubungan berasaskan SQL hanya sebahagiannya sesuai untuk pertanyaan hierarki atau rekursif. Sistem lain seperti ArangoDB lebih sesuai untuk ini (terdapat perbincangan hebat tentang ini di GOTO 2016 ). Walau bagaimanapun, pertanyaan rekursif dalam SQL juga boleh dibuat menggunakan Common Table Expressions , yang membolehkan anda, sebagai contoh, membuat pertanyaan pada jadual induk/anak klasik untuk semua nenek moyang dan keturunan.
Dalam PostgreSQL seperti ini, misalnya:
0672c4761d202a35a9059fa137ace7c3
Sekiranya anda ingin mendapatkan semua anak dari item_id tertentu, anda menggunakan Ungkapan Jadual Biasa:
0672c4761d202a35a9059fa137ace7c3
Menanya ibu bapa juga tidak ada masalah:
0672c4761d202a35a9059fa137ace7c3