powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Не пойму разницу синтаксиса функций аналитики/агрегации
3 сообщений из 3, страница 1 из 1
Не пойму разницу синтаксиса функций аналитики/агрегации
    #39996480
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно сделать pivot на Oracle 10g.
Делаю так:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
select TARIFF_ID, USER1 as VSA
, max(case when USER2 like 'meter-circuit-burst %' then to_number(substr(USER2, 21)) end)               /*keep (dense_rank last order by TARIFFEL_ID) over (partition by TARIFF_ID)*/ as QOS_OUT_BURST
, max(case when USER2 like 'meter-circuit-excess-burst %' then to_number(substr(USER2, 28)) end)        /*keep (dense_rank last order by TARIFFEL_ID) over (partition by TARIFF_ID)*/ as QOS_OUT_EXCESS
...
from BM_TARIFFEL
where ...
and USER1 = 'RBN-Dynamic_QoS_Param'
and TARIFF_ID = 4732
group by TARIFF_ID, USER1


Так работает, выбирает максимальное значение из набора соответствующих строк.
Но если мне нужно не максимальное, а последнее (с максимальным PK)?
Если снимаю комментарий, то получаю ORA-00979 о том, что USER2 не является выражением GROUP BY.
Или нужно указать пустой over () ?
...
Рейтинг: 0 / 0
Не пойму разницу синтаксиса функций аналитики/агрегации
    #39996488
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.,

А зачем тут over?
...
Рейтинг: 0 / 0
Не пойму разницу синтаксиса функций аналитики/агрегации
    #39996526
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даже не знаю. У меня без over на некоторых наборах (которые оказались в начале возвращаемого resultset) данных возвращался null, я решил, что null на всех.

Да, без over все работает.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Не пойму разницу синтаксиса функций аналитики/агрегации
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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