Вывод под категорий 1м запросом

Joker84

Постоялец
Регистрация
8 Авг 2007
Сообщения
68
Реакции
2
Добрый день структура данных в БД такая


пример данных
ИД Имя категории имя родителя
1 Автомобили 0
2 седаны 1
3 хетчбек 1
4 пикам 1
5 Тойота 2 (категория седаны)
6 нисан 2
7 Рулевая тяга 7 (категория Тойота)




как вывести например :
категорию седаны и все ее подкатегории ?

уровней вложенности может быть много, для каждой категории проверять есть ли у нее дети невозможно, сильно нагрузит БД



Буду очень признателен за конструктивные советы
 
SELECT * FROM xx WHERE id = 2 // категория
SELECT * FROM xx WHERE parrent_id = 2 //и все ее подкатегории
...
или я чего-то не понял
а вообще- пройдитесь по этим ссылкам
http://nulled.cc/showpost.php?p=1733093&postcount=4

если нужна большая вложенность и частые обращения то возможно понадобиться изменить структуру таблиц
 
SELECT * FROM xx WHERE id = 2 // категория
SELECT * FROM xx WHERE parrent_id = 2 //и все ее подкатегории
...
или я чего-то не понял
а вообще- пройдитесь по этим ссылкам
http://nulled.cc/showpost.php?p=1733093&postcount=4
если нужна большая вложенность и частые обращения то возможно понадобиться изменить структуру таблиц


данное решение неподопустимо т.к у подкатегорий есть попдподкатегории
а у подподкатегорий есть еще вложенности. тем самым кол-во запросов будет колосальным
 
данное решение неподопустимо т.к у подкатегорий есть попдподкатегории
а у подподкатегорий есть еще вложенности. тем самым кол-во запросов будет колосальным
Почитай про вложенные множества(nested sets). В интернете эта тема уже избита до нельзя.
 
Назад
Сверху