Fludimir
Новичок
Использование данных из предыдущего ряда для получения следующего
Есть таблица с простой древовидной иерархией записей, типа
id data parent_id
id - ид строки, data - какие-то полезные данные, несколько колонок на самом деле, но не принципиально, parent_id - ид родительской по иерархии записи, или 0 если запись корневая
Можно ли как-то одним запросом получить результат в виде всех дочерних записей для одной родительской? Естественно безо всякой иерархии, просто список всех записей которые являются дочерними для одной конкретной записи, как дочерними первого уровня (тут простоо выборка по parent_id = id) , так и дочерними для этих дочерних и так далее.
Аналогично и наоборот - есть какая-то дочерняя запись, нужно получить для неё всех родителей родителей родителей, т.е. как-то нужно в запрос подставлять данные из полученного тут же ранее ряда
Интересно именно решение в SQL , получить иерархию в коде с помощью рекурсии проблем не составляет, но это не всегда удобно, и просто интересно можно ли это сделать только в запросе
Есть таблица с простой древовидной иерархией записей, типа
id data parent_id
id - ид строки, data - какие-то полезные данные, несколько колонок на самом деле, но не принципиально, parent_id - ид родительской по иерархии записи, или 0 если запись корневая
Можно ли как-то одним запросом получить результат в виде всех дочерних записей для одной родительской? Естественно безо всякой иерархии, просто список всех записей которые являются дочерними для одной конкретной записи, как дочерними первого уровня (тут простоо выборка по parent_id = id) , так и дочерними для этих дочерних и так далее.
Аналогично и наоборот - есть какая-то дочерняя запись, нужно получить для неё всех родителей родителей родителей, т.е. как-то нужно в запрос подставлять данные из полученного тут же ранее ряда
Интересно именно решение в SQL , получить иерархию в коде с помощью рекурсии проблем не составляет, но это не всегда удобно, и просто интересно можно ли это сделать только в запросе