Τα συστήματα διαχείρισης σχεσιακών βάσεων δεδομένων που βασίζονται σε SQL είναι μόνο εν μέρει κατάλληλα για ιεραρχικά ή αναδρομικά ερωτήματα. Άλλα συστήματα όπως το ArangoDB είναι πιο κατάλληλα για αυτό (έγινε μεγάλη συζήτηση σχετικά με αυτό στο GOTO 2016 ). Ωστόσο, είναι επίσης δυνατό να δημιουργήσετε αναδρομικά ερωτήματα σε SQL χρησιμοποιώντας Κοινές Εκφράσεις Πίνακα , επιτρέποντάς σας, για παράδειγμα, να υποβάλετε ερωτήματα σε κλασικούς πίνακες γονέων/παιδιών για όλους τους προγόνους και τους απογόνους.
Στην PostgreSQL μοιάζει με αυτό, για παράδειγμα:
0672c4761d202a35a9059fa137ace7c3/ca9b571d40544dcd8e0afc989c89c49f8b1f3251
Εάν θέλετε να αποκτήσετε όλα τα παιδιά ενός συγκεκριμένου item_id, χρησιμοποιείτε τις Κοινές εκφράσεις πίνακα:
0672c4761d202a35a9059fa137ace7c3/ca9b571d40544dcd8e0afc989c89c49f8b1f3251
Η ερώτηση των γονέων δεν αποτελεί πρόβλημα:
0672c4761d202a35a9059fa137ace7c3/ca9b571d40544dcd8e0afc989c89c49f8b1f3251