Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
21.10.2009, 03:29
|
|||
---|---|---|---|
Дерево. Каким запросом вывести всю цепочку? |
|||
#18+
Всё в одной таблице (MDB файл). Такие поля: ID, ParentID, Name Хочется, используя запрос, получить список взаимосвязанных ID. Или это вообще невозможно в Аксессе? Что-то ничего в голову не приходит:) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.10.2009, 08:53
|
|||
---|---|---|---|
|
|||
Дерево. Каким запросом вывести всю цепочку? |
|||
#18+
...если количество уровней ограничено, то Left Join таблицы с самой собой если - неограничено, то ИМХО - только функцией в VBA зы такая задача в древовидн.структурах, слишком часто возникает, поэтому у себя, для каждого узла дерева, делаю поле, типа ВесьПутьУзла - .....ID родителя родителя\ID родителя\ID узла и при вставке/обновлении - устанавливаю это поле но это в адп, в тригере ... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.10.2009, 09:03
|
|||
---|---|---|---|
Дерево. Каким запросом вывести всю цепочку? |
|||
#18+
"Весь путь узла" позволяет очень быстро решать задачи поиска всех потомков, цепочки наверх до самого корня и т.п. Если практическая губина дерева ограничена (скажем, 10 уровнями) то вполне можно собрать в юнион 10 аналогичных запросов (в каждый добавляя на одну таблицу больше). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=45&tablet=1&tid=1635072]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
25ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 125ms |
0 / 0 |