Помогите составить запрос

pilot911

Новичок
Помогите составить запрос

Есть 2 таблицы:

Первая таблица с полями
[sql]
TABLE forum_thread {
id,
pid
}
[/sql]

Вторая таблица

[sql]
TABLE user_access {
id,
thread_id,
user_group_id
}
[/sql]


Таблица forum_thread имеет pid, который хранят вложенные форумы, как родительский.

Я решил назначать права именно родителю, чтобы по родителю определялись права доступа к вложенным форумам.

То есть, если в таблице user_access есть запись для конкретного родительского форума и пользовательской группы, то доступ разрешен.

Как в одном запросе обратиться к родительской ветке, зная ее ID, связать эту родительскую ветку с user_access, и выбрать вложенные форумы ?
 

pilot911

Новичок
я бы предпочел объединение таблицы с собой, просто не очень представляю реализацию

-~{}~ 21.06.09 08:32:

все решилось довольно просто:

[sql]

SELECT *

FROM forum_thread AS t1

LEFT JOIN forum_thread AS parent

ON t1.pid = parent.id

LEFT JOIN user_access AS ua

ON parent.id = user_access.row_id

WHERE user_group_id = 10 AND t1.id = 1



[/sql]
 

pilot911

Новичок
Автор оригинала: Wicked
максимальный уровень вложенности = 2 ?
нет, неограниченный, просто при создании нового вложенного раздела (не форума, а раздела, который может содержать форумы) этому разделу администратор должен назначить разрешенные группы

имхо, это несложно в плане управления форумом, потому что разделов (в тч и вложенных) на форумах максимум 20-30 и меняются они нечасто
 
Сверху