Avron2
Новичок
Есть исходная таблица "Темы форума" (id_parent=0 - это корневые, а иначе вложенные в др.тему)
Помогите составить запрос, чтобы результатом его было следующее
| id | theme |
________________________
1 PHP
90 Регулярные выражения
96 ООП
102 Сессии
________________________
89 Delphi
100 Работа с InterBase
109 ООП
....................................
и т.д.
А еще лучше если бы вывести это все в виде дерева
Т.е. нужно выбрать инфу по принадлежности к главной теме. В 1-ом блоке результата запроса все подтемы, которые принадлежат теме PHP
Во 2-ом блоке все, которые принадлежат Delphi.
Как я понимаю одним запросом здесь не обойтись.
У меня получилось вот что:
Вот результат:
но здесь не попали темы, у которых нет детей и корневые темы PHP и Delphi тоже не попали в t2_theme.
Помогите составить запрос, чтобы результатом его было следующее
| id | theme |
________________________
1 PHP
90 Регулярные выражения
96 ООП
102 Сессии
________________________
89 Delphi
100 Работа с InterBase
109 ООП
....................................
и т.д.
А еще лучше если бы вывести это все в виде дерева
Т.е. нужно выбрать инфу по принадлежности к главной теме. В 1-ом блоке результата запроса все подтемы, которые принадлежат теме PHP
Во 2-ом блоке все, которые принадлежат Delphi.
Как я понимаю одним запросом здесь не обойтись.
У меня получилось вот что:
PHP:
SELECT t1.theme AS t1_theme, t2.id AS t2_id, t2.id_parent AS t2_parent, t2.theme AS t2_theme
FROM forum.themes AS t1, forum.themes AS t2
WHERE t1.id
IN (
SELECT t2.id_parent
FROM forum.themes
WHERE (
t2.id_parent = t1.id
)
)
ORDER BY t1.theme, t2.theme
но здесь не попали темы, у которых нет детей и корневые темы PHP и Delphi тоже не попали в t2_theme.
Вложения
-
67,3 KB Просмотры: 32
-
25,8 KB Просмотры: 32