Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Вниз

Нужен алгоритм выборки по рекурсивной связи   Найти похожие ветки 

 
alsov1   (2004-11-09 13:26) [0]

Приветствую Мастера!

Есть табличка с рекурсивной связью
id    ids    value
1            test1
2            test2
3      1     test11
4      1     test12
5      2     test21
6      3     test111
7      3     test112

Нужно выбрать все записи где id = 1,
все записи, где ids ссылается на id = 1,
все записи где ids ссылается на id, ids у которой ссылается на id = 1
и так далее

Таких ссылок может быть сколько угодно

для нескольких написать получается
select * from table1
where id = 1 or
     id in (select id from test where ids = 1);

Но неужели нет другого способа???
Например, что значение where формировалось циклом

Заранее спасибо


 
Vlad ©   (2004-11-09 13:29) [1]


> alsov1   (09.11.04 13:26)  

СУБД ?


 
alsov1   (2004-11-09 13:33) [2]

/Vlad/
Oracle


 
Vlad ©   (2004-11-09 13:35) [3]


> alsov1   (09.11.04 13:33) [2]

select * from table start with id = 1 connect by prior id = ids


 
alsov1   (2004-11-09 15:10) [4]

Vlad

Получилось. Спасибо.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.038 c
11-1083763141
RA
2004-05-05 17:19
2004.12.05
О GlueCut


1-1101284038
Alex_Bredin
2004-11-24 11:13
2004.12.05
Не могу записать значение в реестр


14-1100712272
Yanis
2004-11-17 20:24
2004.12.05
Про WinAmp


4-1098344748
Klopan
2004-10-21 11:45
2004.12.05
Реестр


1-1100684507
Богдан
2004-11-17 12:41
2004.12.05
Заполнение полей TEdit





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский