Я пытаюсь создать несколько отчетов, отображающих вычисленное значение для каждого месяца, где значения месяца являются столбцами.PIVOT с рассчитанной агрегатной функцией
Базовый запрос работает хорошо, чтобы сообщить месяцы построчно:
SELECT ROUND(SUM(REVENUE)/SUM(HEADCOUNT), 2), MONTH FROM TABLE
GROUP BY MONTH
Но если я пытаюсь повернуть таблицу, я постоянно получаю ошибку ORA-56902: «ожидать агрегатной функции внутри операции поворота»:
SELECT * FROM (
SELECT REVENUE, HEADCOUNT, MONTH FROM TABLE
)
PIVOT (ROUND(SUM(REVENUE)/SUM(HEADCOUNT), 2) FOR MONTH IN ('APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEC', 'JAN', 'FEB', 'MAR'))
есть ли способ, чтобы получить PIVOT, чтобы увидеть ROUND (SUM (ДОХОД)/SUM (ЧИСЛЕННОСТЬ ПЕРСОНАЛА), 2) в качестве агрегатной функции, или есть какая-то другая функция, я должен использовать.
Оба эти решения работают хорошо. Я мог бы поклясться, что попробовал что-то похожее на ваш 2-й ответ, но, должно быть, я что-то упустил. –