powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / Просто Трёп [закрыт для гостей] / бНОПНЯ про орацле, Поиск: Искать сообщения, созданные автором: Горбатый ёж  
7 сообщений из 7, страница 1 из 1
Просто Трёп / бНОПНЯ про орацле
    #437251
Горбатый ёж
Скрыть профиль Поместить в игнор-лист
Участник
ZаЛупина  21.06.2023, 14:31
[игнорируется]
а вот так - как то, что в нём пришло
v_qry := 'select p_param z from dual';
О чём и написано в документации.
...
Рейтинг: 0 / 0
Просто Трёп / бНОПНЯ про орацле
    #494648
Горбатый ёж
Скрыть профиль Поместить в игнор-лист
Участник
Ничо нипонял.
Может завтра посмотрю.
...
Рейтинг: 0 / 0
Просто Трёп / бНОПНЯ про орацле
    #495023
Горбатый ёж
Скрыть профиль Поместить в игнор-лист
Участник
ZаЛупина [игнорируется] 

Что такое у тебя cd?
Номер по порядку в разрезе года?
Построй такое дерево, чтобы у тебя ID не пересекались вообще.
Например просто сгенерируй на основании cd и yr уникальный cd_id и cd_p_id, от этого дальше и танцуй.
Пока ты этого не сделаешь у тебя так и будет херня, потому что посмотри своё дерево
Код: SQL
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
with tmp (yr, cd, cd_p, q) as
(
select 2022 , 1 , NULL , 0 from dual union all
select 2022 , 2 , 1 , 0 from dual union all
select 2022 , 3 , 1 , 0 from dual union all
select 2022 , 4 , 2 , 100 from dual union all
select 2022 , 5 , 3 , 200 from dual union all
select 2023 , 1 , NULL , 0 from dual union all
select 2023 , 2 , 1 , 0 from dual union all
select 2023 , 3 , 1 , 0 from dual union all
select 2023 , 4 , 2 , 300 from dual union all
select 2023 , 5 , 3 , 400 from dual
)
select
      yr, cd, cd_p, q
   from
      tmp a
   start with cd_p is null
   connect by prior cd = cd_p
У тебя там 26 строк.
Короче почитай как строится дерево.
...
Рейтинг: 0 / 0
Просто Трёп / бНОПНЯ про орацле
    #495031
Горбатый ёж
Скрыть профиль Поместить в игнор-лист
Участник
ZаЛупина  01.08.2023, 10:57
[игнорируется]
а я просто хочу построить разные ветви в разрезе годов
Ну так и почитай, как строится дерево!
Что такое ID и MAIN_ID.
Я так понимаю тебе хочется вот по такому дереву идтить
Код: SQL
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
with tmp (yr, cd, cd_p, q) as
(
select 2022 , 1 , NULL , 0 from dual union all
select 2022 , 2 , 1 , 0 from dual union all
select 2022 , 3 , 1 , 0 from dual union all
select 2022 , 4 , 2 , 100 from dual union all
select 2022 , 5 , 3 , 200 from dual union all
select 2023 , 1 , NULL , 0 from dual union all
select 2023 , 2 , 1 , 0 from dual union all
select 2023 , 3 , 1 , 0 from dual union all
select 2023 , 4 , 2 , 300 from dual union all
select 2023 , 5 , 3 , 400 from dual
)
select
      yr, cd, cd_p, q
   from
      tmp a
   connect by prior yr*cd = yr*cd_p;
...
Рейтинг: 0 / 0
Просто Трёп / бНОПНЯ про орацле
    #495034
Горбатый ёж
Скрыть профиль Поместить в игнор-лист
Участник
ZаЛупина  01.08.2023, 10:59
[игнорируется]
заговнокожу хп, как вариант
который будет работать с выборкой по каждому году. суммировать, загружать в табличку, и так в цикле
Тоже вариант.
Но ты просто неправильно строишь дерево.
...
Рейтинг: 0 / 0
Просто Трёп / бНОПНЯ про орацле
    #495043
Горбатый ёж
Скрыть профиль Поместить в игнор-лист
Участник
ZаЛупина  01.08.2023, 11:03
[игнорируется]
дублируются коды из дерева
Ты понимаешь смысл связки родитель-наследник?
Они должны связываться по коду, который должен быть уникальным.
У тебя уникальность только в рамках года, ну так и сделай уникальность посредством перемножения кода на год или сложением, не будет у тебя никаких проблем тогда.
...
Рейтинг: 0 / 0
Просто Трёп / бНОПНЯ про орацле
    #495045
Горбатый ёж
Скрыть профиль Поместить в игнор-лист
Участник
ZаЛупина  01.08.2023, 11:03
[игнорируется]
но непонятно, почему через корр. подзапросы он не фильтрует , и порциями по-годово не подсовывает табличку под дерево
Потому что у тебя один хуй в результате строит дерево по условию connect by prior cd = cd_p!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Просто Трёп [закрыт для гостей] / бНОПНЯ про орацле, Поиск: Искать сообщения, созданные автором: Горбатый ёж  
Читали тему (1): Анонимы (1)
Игнорируют тему (3): Королева Жезлов, erbol, папа акуз
Читали форум (11): Анонимы (10), prostozevs 8 мин.
Пользователи онлайн (18): Анонимы (16), Yandex Bot, prostozevs 8 мин.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
x
x
Закрыть


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