ORA-00979: выражение не является выражением GROUP BY
Всем привет. Подскажите коллеги, что я делаю не так, либо мне не по глазам. Посмотрите своим взглядом.
[Error] Execution (1: 1): ORA-00979: выражение не является выражением GROUP BY ORA-06512: на line 14 ORA-06512: на line 14
Ругается на строку, которая идет после FOR result_rec IN (
DECLARE
v_start_date DATE := TO_DATE('2024-01-01', 'YYYY-MM-DD');
v_end_date DATE := TO_DATE('2024-01-31', 'YYYY-MM-DD');
v_section_number NUMBER := 1;
BEGIN
FOR section_rec IN (SELECT maingroup, undergroup, minigroup
FROM v_sectiongroup
WHERE store = 'МАГАЗИН'
AND minigroup IS NOT NULL
AND numbersection = v_section_number) LOOP
FOR result_rec IN (
SELECT maingroup AS Отдел,
'Секция ' || undergroup AS Секция,
LISTAGG(insumm, ', ') WITHIN GROUP (ORDER BY undergroup, minigroup) AS "Товарооборот, руб",
LISTAGG(outsumm, ', ') WITHIN GROUP (ORDER BY undergroup, minigroup) AS "Реализация, руб",
ROUND(SUM(outsumm - insumm), 2) AS "ТН,(руб.)",
ROUND(SUM(outsumm * 100 / CASE WHEN SUM(insumm) = 0 THEN 1 ELSE SUM(insumm) END - 100), 2) AS "ТН,(%)"
FROM v_rentab_full
WHERE (maingroup, undergroup, minigroup) IN (
SELECT maingroup, undergroup, minigroup
FROM v_sectiongroup
WHERE store = 'МАГАЗИН'
AND minigroup IS NOT NULL
AND numbersection = v_section_number
)
AND cddate BETWEEN v_start_date AND v_end_date
AND storecode = 'МАГАЗИН'
GROUP BY maingroup, undergroup -- Добавлены maingroup и undergroup для группировки
) LOOP
-- Вывод результатов
DBMS_OUTPUT.PUT_LINE(result_rec.Отдел || ', ' || result_rec.Секция || ', ' ||
result_rec."Товарооборот, руб" || ', ' || result_rec."Реализация, руб" || ', ' ||
result_rec."ТН,(руб.)" || ', ' || result_rec."ТН,(%)");
END LOOP;
END LOOP;
END;
/