@marselabdullin

Как вставить дробь в partition by?

Мне нужно посчитать среднее значение по такой формуле:

sum(rashody)/count(distinct data_prikaza_)

И далее это поле включая другие группируется в partition by, однако я получаю ошибку:

not a single group group function

Раньше я использовал avg и все было хорошо, но сейчас он не подходит
Возможно стоит проверить на 0 знаменатель
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
idShura
@idShura

select sum(rashody)/count(distinct data_prikaza_) over(partition by gosb) from erp_trips



count не является аналитической функцией из-за чего появляется ошибка ORA-00937 not a single-group function. Для исправления ошибки в запрос нужно добавить group by.

Да и запрос мягко говоря странный. Какую информацию можно узнать разделив расходы на дату приказа?? Зачем нужен distinct?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы