Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.11.11;
Скачать: CL | DM;

Вниз

Зацикливание при иерархическом запросе   Найти похожие ветки 

 
Sonia ©   (2007-10-17 17:21) [0]

Здравствуйте. Имеются данные из 3-х полей flt, sst, mff соответственно:
С7001 - 00 - null
7Б002 - 02 - null
C7003 - SF - 7Б002
И6004 - SF - 7Б002
и т.д.
пишу запрос:

SELECT     hfd.flt, hfd.mff
     FROM hist_flight_departures hfd
    WHERE hfd.sst <> "00" AND hfd.sdt BETWEEN to_date("01.08.2007","dd.mm.yyyy") AND to_date("02.08.2007","dd.mm.yyyy")
START WITH hfd.sst <> "SF" -- то есть для строк, где поле sst = 01 или 02 или 03 и т.д.
CONNECT BY prior hfd.flt = hfd.mff


С помощью этого запроса хочу получить информацию, вида: (flt и mff соответственно):
7Б002  - C7003
7Б002  - И6004

При этом Оракл пишет ошибку зацикливание (Connect by loop in user data). Подскажите, в чем ошибка?
Спасибо!


 
Reindeer Moss Eater ©   (2007-10-17 17:28) [1]

стартовать надо с единственного ключа, а не с множества


 
Sergey13 ©   (2007-10-17 17:36) [2]

> [0] Sonia ©   (17.10.07 17:21)
> Подскажите, в чем ошибка?

В данных наверное. Кольцо нашлось.

> [1] Reindeer Moss Eater ©   (17.10.07 17:28)

Разве?


 
Sonia ©   (2007-10-18 10:22) [3]


> В данных наверное. Кольцо нашлось.

Хм...не должно быть... flt у которых sst="SF" - всегда дочерние


 
Sonia ©   (2007-10-18 10:29) [4]

Могу конечно намутить селект из селекта, но не хочется....Да и дольше обрабатываться наверное будет...


 
Sonia ©   (2007-10-18 10:57) [5]


> В данных наверное. Кольцо нашлось.

А как проверить, есть кольцо или нет, не прибегая к ручному просмотру?


 
Sergey13 ©   (2007-10-18 11:09) [6]

> [5] Sonia ©   (18.10.07 10:57)

Сначала позапускай последовательно запрос для каждого члена множества hfd.sst <> "SF" - найдешь проблемную ветку.

После добавь в запрос level

CONNECT BY prior hfd.flt = hfd.mff and level<3

повышая уровень вложенности найдешь проблемный уровень.

Я бы так искал.


 
Sonia ©   (2007-10-18 12:04) [7]


> Sergey13 ©   (18.10.07 11:09) [6]

Спасибо, попробую, но скорее всего проблема в написанном коде, т.к. таблица написана не мной, поэтому на 99.(9) % зацикливания в данных не должно быть...



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

Текущий архив: 2007.11.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.022 c
1-1187258884
Klopan
2007-08-16 14:08
2007.11.11
Object TreeView


8-1168752381
9903
2007-01-14 08:26
2007.11.11
Компоненты для работы c wma mp3


2-1192871298
sydenis
2007-10-20 13:08
2007.11.11
как удалить текст из файла?


11-1170771683
Psychedelic
2007-02-06 17:21
2007.11.11
Исправления в KOLComboBoxEx и KOLSATab


15-1191265598
TopoR
2007-10-01 23:06
2007.11.11
2 задачи в Delphi...