SQL पर आधारित रिलेशनल डेटाबेस मैनेजमेंट सिस्टम, पदानुक्रमित या रिकर्सिव क्वेरी के लिए केवल आंशिक रूप से ही उपयुक्त हैं। ArangoDB जैसे अन्य सिस्टम इसके लिए बेहतर उपयुक्त हैं ( GOTO 2016 में इस विषय पर एक शानदार चर्चा हुई थी)। हालांकि, कॉमन टेबल एक्सप्रेशंस का उपयोग करके SQL में रिकर्सिव क्वेरी बनाना भी संभव है, जिससे आप उदाहरण के लिए, सभी पूर्वजों और वंशजों के लिए क्लासिक पैरेंट/चाइल्ड टेबल से क्वेरी कर सकते हैं।
PostgreSQL में यह इस तरह दिखता है, उदाहरण के लिए:
0672c4761d202a35a9059fa137ace7c3/ca9b571d40544dcd8e0afc989c89c49f8b1f3251
यदि आप एक निश्चित item_id के सभी बच्चों को प्राप्त करना चाहते हैं, तो आप कॉमन टेबल एक्सप्रेशंस का उपयोग करें:
0672c4761d202a35a9059fa137ace7c3/ca9b571d40544dcd8e0afc989c89c49f8b1f3251
माता-पिता को कहना भी कोई समस्या नहीं है:
0672c4761d202a35a9059fa137ace7c3/ca9b571d40544dcd8e0afc989c89c49f8b1f3251