Rekursion i SQL

Relationella databashanteringssystem baserade på SQL är endast delvis lämpliga för hierarkiska eller rekursiva frågor. Andra system som ArangoDB är bättre här (det var ett bra samtal om detta på GOTO 2016 ). Du kan också skapa rekursiva frågor i SQL med hjälp av vanliga tabelluttryck och därmed fråga klassiska överordnade / underordnade tabeller för alla förfäder och ättlingar.


I PostgreSQL ser det till exempel ut så här:

0672c4761d202a35a9059fa137ace7c3

Om du vill få alla barn till ett visst objekt_id använder du de vanliga tabelluttrycken:

0672c4761d202a35a9059fa137ace7c3

Att fråga efter föräldrarna är inte heller något problem:

0672c4761d202a35a9059fa137ace7c3

Tillbaka