Гость
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вывести сумму для обьектов, которые располагаются ниже по иерархии / 4 сообщений из 4, страница 1 из 1
29.11.2021, 15:34
    #40115914
da.kuznetsov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывести сумму для обьектов, которые располагаются ниже по иерархии
Добрый день!

Столкнулся с задачкой, подскажите как решить

Есть таблица, где храняться работы разных уровней. Структура примерно такая:


Необходимо для каждой работы получить сумму фактических часов (в таблице столбец - actual hours) работ нижнего уровня. Т.е. для WO1 должны просуммироваться JOB_1, JOB_2, JOB_3. Для WP1_1 - сумма WO1, WO2 и т.д.
При этом фактические часы существуют только для работ самого нижнего уровня. Т.е. для WO1 сумма в базе не хранится...

ct_id actual hours totalWP1 (null) (null)__WP1_1 (null) (null)____WO1 (null) (null)______JOB1 10 (null)______JOB1 40 (null)______JOB2 15 (null)______JOB3 (null) (null)__WP1_2 (null) (null)____WO1_2 (null) (null)______JOB1_2_1 10 (null)

Нужный результат:

ct_id actual hours totalWP1 (null) 75__WP1_1 (null) 65____WO1 (null) 65______JOB1 10 (null)______JOB1 40 (null)______JOB2 15 (null)______JOB3 (null) (null)__WP1_2 (null) 10____WO1_2 (null) 10______JOB1_2_1 10 (null)

Пробовал стандартные функции группировки, суммирования и rollup - не вышло...
...
Рейтинг: 0 / 0
29.11.2021, 15:51
    #40115918
Stax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывести сумму для обьектов, которые располагаются ниже по иерархии
da.kuznetsov

Пробовал стандартные функции группировки, суммирования и rollup - не вышло...


если кодировать влоб, то
select *,(select sum(ah) from t t2 ... start with t2.id=t.id ...) from t ... connect by ...

у Вас значения только в листьях, подозреваю что есть "красивые" решения


зы
with c данными бы пригодился

.....
stax
...
Рейтинг: 0 / 0
29.11.2021, 15:52
    #40115919
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывести сумму для обьектов, которые располагаются ниже по иерархии
da.kuznetsovподскажите как решить

Рекурсией.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
29.11.2021, 16:10
    #40115925
Sayan Malakshinov
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывести сумму для обьектов, которые располагаются ниже по иерархии
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вывести сумму для обьектов, которые располагаются ниже по иерархии / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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