@marselabdullin

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

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

sum(rashody)/count(distinct data_prikaza_)

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

not a single group group function

Раньше я использовал avg и все было хорошо, но сейчас он не подходит
Возможно стоит проверить на 0 знаменатель
  • Вопрос задан
  • 43 просмотра
Решения вопроса 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?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы