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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.058 c
4-1177781077
delete_file
2007-04-28 21:24
2007.11.11
Удаление файла занятого другим процессом


15-1192007594
Vlad Oshin
2007-10-10 13:13
2007.11.11
Не подключается программа к БД. MSSQLserver2005


15-1191242767
REA
2007-10-01 16:46
2007.11.11
Прорисовка компонента Explorer Search bar


2-1192442287
Footballer
2007-10-15 13:58
2007.11.11
Блокировка нажатия клавиш


2-1192546016
Кевларвестов Семен
2007-10-16 18:46
2007.11.11
Конвертировани строки 01.01.0 в дату





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский