Главная страница
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.021 c
6-1173173691
inex
2007-03-06 12:34
2007.11.11
простенький сканер сети


15-1190827861
Kolan
2007-09-26 21:31
2007.11.11
MVC &amp;#151; спрашивали? :)


6-1172929528
tytus
2007-03-03 16:45
2007.11.11
TWebBrowser - долгая загрузка страницы.


2-1192799860
Friz
2007-10-19 17:17
2007.11.11
ShellExecute


2-1193040297
ruma
2007-10-22 12:04
2007.11.11
TStringGrid. Как удержать фокус на ячейке таблицы?