Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Стандартная задача, но не получается. Помогите: Очень ЖДУ!!! [D7, Access]


antoxa2005 ©   (2006-05-30 15:33:00) 

Подскажите как выбрать все подчиненные записи.
Есть таблица
ID | ParentID | Name
---------------------
1         0         str1
2         1         str2
3         2         str3
..........................
---------------------  
Как зная ID, например 1 выбрать все подчиненные т.е. 2 и 3 и т.д.  Если можно с конкретным примером. Я так понимаю это что-то типа построения дерева. Очень ЖДУ!!!


antoxa2005   (2006-06-23 13:09:00) [1]

Кинь примерчик еслиможно.


StriderMan   (2006-06-19 00:01:00) [2]

Я такую задачу хранимой процедурой с циклом решал. на FireBird'е


antoxa2005   (2006-06-05 07:13:00) [3]

Хорошо!


Ильш   (2006-06-05 06:13:00) [4]

естественно реально работает :)
при такой ситуации реально удобно
можно выдергивать всю ветвь с любую сторону вверх/вниз
только главное с обеих сторон от цифр точки ставь, а при выдобке порльзуешь like '%.2.%' например


antoxa2005   (2006-06-04 12:04:00) [5]

Что-то страно самопально, но интересно. Подскажи, а ты реально это использовал?


Ильш   (2006-05-31 07:47:00) [6]

чтобы так делать заводится служебное поле  - полный путь

ID | ParentID | FullPath
---------------------
1         0         .1.
2         1         .1.2.
3         2         .1.2.3.
..........................
---------------------
и по нему уже делаешь все выборки при помощи like
все счастливы, пиво, пиво, пиво...


antoxa2005   (2006-05-31 03:41:00) [7]

А как вообще это сделать?


MsGuns   (2006-05-30 17:09:00) [8]

Одним запросом - никак


antoxa2005   (2006-05-30 15:43:00) [9]

Покажи пожалуйста.


Ega23   (2006-05-30 15:35:00) [10]

Для Access - не знаю. Для MSSQL - могу показать.


Наверх

Титульная страница Поиск, карта сайта Написать письмо