powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Иерархический запрос
16 сообщений из 16, страница 1 из 1
Иерархический запрос
    #39673177
Kum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Написал запрос обрабатывается несколько суток без результата
Имеется таблица tables мне нужно вытащить всех детей и родителей не известно сколько циклов будет
select level,
id,
date,
type,
number,
reg_number
from tables
start with reg_nember is null
connect by prior number=number
Подскажите как можно сделат запрос?
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673196
Фотография Щукина Анна
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kum1,

вы уверены, что показываете нам работающую версию запроса?
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673201
Фотография Щукина Анна
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kum1,

ваш запрос, как минимум, должен был слететь с ошибкой
Код: plsql
1.
ORA-01436: CONNECT BY loop in user data
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673216
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kum1,

connect by prior number=number
очепятка?

как Вы дитя/родителя определяете?

....
stax
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673477
Kum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ваш запрос, как минимум, должен был слететь с ошибкой

ORA-01436: CONNECT BY loop in user data



Ошибок не было
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673478
Kum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
connect by prior number=number
очепятка?

как Вы дитя/родителя определяете?


да опечатка
reg_number=number
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673489
Kum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
id, date, type, number, reg_number
1 01.10.2014 123456 5 null Родитель
2 01.03.2015 231564 9 5 3 дети
3 12.06.2016 201211 4 9 2 дети
4 25.08.2017 210231 7 4 1 дети

Пример во вложении
Подскажите с запросом, за ранее благодарю
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673559
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kum1,

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
  1  with t (id,dat,type,numb,reg_number) as (
  2  select 1,  '01.10.2014',   123456, 5,      null from dual union all
  3  select 2,  '01.03.2015',   231564, 9,      5 from dual union all
  4  select 3,  '12.06.2016',   201211, 4,      9 from dual union all
  5  select 4,  '25.08.2017',   210231, 7,      4 from dual
  6  )
  7  select id,dat,lpad(' ',(level-1)*2)||type tree,level l,numb,reg_number
  8  from t
  9  start with reg_number is null
 10* connect by prior numb=reg_number
SQL> /

        ID DAT        TREE                     L       NUMB REG_NUMBER
---------- ---------- --------------- ---------- ---------- ----------
         1 01.10.2014 123456                   1          5
         2 01.03.2015   231564                 2          9          5
         3 12.06.2016     201211               3          4          9
         4 25.08.2017       210231             4          7          4



.....
stax
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673737
Kum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо Stax
У меня таблица 120 млн строк, этот запрос висит не сколько суток
Есть какой нибудь выход?
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673741
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kum1У меня таблица 120 млн строк, этот запрос висит не сколько сутокРасскажи нам, чудак, что собрался делать со всеми этими 120 лямами?
http://www.bugtraq.ru/forum/faq/general/smart-questions.html] RTFM
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673759
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kum1Есть какой нибудь выход?

надо решить зачем Вам дерево на 120млн

....
stax
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673927
Фотография Fogel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElicKum1У меня таблица 120 млн строк, этот запрос висит не сколько сутокРасскажи нам, чудак, что собрался делать со всеми этими 120 лямами?
http://www.bugtraq.ru/forum/faq/general/smart-questions.html] RTFM


Elic. если ты такой "мудрый", напиши книгу с аккумуляцией своего опыта - будет тебе ещё больший почёт и уважение, а так к тебе "иногда" неприязнь и сожаление.
рифма ёпта (надеюсь за это слово не забанят? или забанят?).

По теме топикстартеру:
решал подобное
варианта 2
разбить на периоды по датам - зависит от бизнес-требований, разумеется, и как правило им нужно немного - ставишь ограничение периода по твоей дате (или по другим параметрам).
выделить в отдельную таблицу (или блок сте, то есть with .. as (select... group by number, reg_number)) уникальные значения number и reg_number, то есть связку уникальной пары (по сути получится группировка твоих 120 млн в какое-то обозримое существо) - рулить по ней.

в подобном твоему соединении получается факториал комбинаций.
представь, что у тебя куча дублей, где prior number=number это prior 1 = 1, например 20 записей таких с другими расхожими данными.
сколько будет 20! - посчитай - это кол-во проходов, иными словами термин "кардинальность" в плане запроса.
если дубли уберёшь - проходить будет меньше... времени меньше.. производительность лучше..
ну и т. д.
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673928
Фотография Fogel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PS: дополнение - то, что несколько суток запрос выполняется - значит куча дублей, стопудов.
если бы было просто 60 млн родителей и 60 млн подчинённых - отработает в обозримом будущем, без нескольких суток, даже фулсканом
...
Рейтинг: 0 / 0
Иерархический запрос
    #39673935
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FogelElic. если ты такой "мудрый", напиши книгу с аккумуляцией своего опыта - будет тебе ещё больший почёт и уважение, а так к тебе "иногда" неприязнь и сожаление.Зачем писать книгу? Её антипод и так пишут такие, как ты, которые зачем-то из кожи вон лезут, пытаясь помочь подобным ТС-ам прострелить ногу, даже не вдаваясь в подробности.
...
Рейтинг: 0 / 0
Иерархический запрос
    #39678648
Фотография Fogel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElicFogelElic. если ты такой "мудрый", напиши книгу с аккумуляцией своего опыта - будет тебе ещё больший почёт и уважение, а так к тебе "иногда" неприязнь и сожаление.Зачем писать книгу? Её антипод и так пишут такие, как ты, которые зачем-то из кожи вон лезут, пытаясь помочь подобным ТС-ам прострелить ногу, даже не вдаваясь в подробности.
у тебя "кляузный" опыт, поэтому ты никогда никого не обучишь: твоя цель - гнобить (хз почему, кто тебя так нагнул).
читал твои ранние посты, где ты заискивая, показывал, как ты умеешь. твои решения работают иногда до сих пор. (овер 10 лет)
очень извращённо - слушать того, кто дрючит других. форум для другого всё же.
у тебя есть знания - напиши книгу, пользы будет больше, чем от гнобления на форуме.
"детали/подробности" - тут я очень ржал. у меня такая же проблема в реале, когда мне задачу ставят, но заметь ни у кого нет другого опыта.
все выпытывают - никто не предлагает.
а тебя слушают, как овцы иногда, в угоду собственному смыслу.
дай бог тебе личного счастья.
...
Рейтинг: 0 / 0
Иерархический запрос
    #39678681
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fogelгде ты заискиваяВон оно как тебя зацепило. Только, случаем, ты не слегка заторможенный со своим "диагнозом" и вообще?
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Иерархический запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]