Задать вопрос
PavelK
@PavelK

Древовидное меню. Как выбрать сначала предков, потом потомков?

Добрый вечер!
Есть таблица для древовидного меню
например
id, parentid, title


Соответственно через parentid задаётся к какому предку принадлежит этот потомок.

Когда я делаю запрос к базе, она выдаёт всё вперемешку (если сортировать по возрастанию айдишников)
и когда я в программе пытаюсь вывести такое древовидное меню, разумеется у некоторых потомков нет предков (т.к. в выборке он может быть после потомков)
тут как раз основная трудность - как правильно составить запрос?
Т.е. что бы сначала все предки, затем все потомки (либо предок - потомок, как получится)?

P.S. В программе я могу сначала составить массив, а потом пробежаться по нему и расставить всё по местам,
но этого хочется избежать и получать уже готовую выборку.
  • Вопрос задан
  • 612 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Переходите на структуру Nested Set. В этом случае выборка в нужном порядке делается сортировкой по левому ключу.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы