У меня есть таблица SQL со следующей структурой.
id - int
par - int (relational to id)
name - varchar
Столбец par содержит ссылки на id или NULL если нет ссылки, эта таблица предназначена для построения иерархического дерева.
Затем, учитывая данные:
id par name
1 NULL John
2 NULL Mario
3 1 George
4 3 Alfred
5 4 Nicole
6 2 Margaret
Я хочу получить иерархическое дерево, вплоть допоследний родитель, от данного одиночного id .
Например, я хочу знать дерево от Nicole до последнего родителя.Таким образом, результатом запроса будет:
id par name
5 4 Nicole
4 3 Alfred
3 1 George
1 NULL John
Обычно я делаю это с повторением запроса SQL снова и снова и построением дерева сервера, но сейчас я этого не хочу.
IsЕсть ли способ добиться этого с помощью одного запроса SQL?Мне это нужно либо для MySQL, либо для PgSQL.
И я также хочу знать, если это возможно, широко ли он поддерживается?В каких версиях MySQL или PgSQL можно ожидать поддержки?