Я застрял с функцией 'SUM' в Oracle SQL
Здесь часть запроса, которую я использую для вычисления общего времени в секундах для всей строки 'APLFTSK_CODE', называется ACC.Имя столбца для результатов: TIME_TOTAL_ACC
SUM (
CASE
WHEN
APLFTSK.APLFTSK_CODE = 'AAC'
AND APLCALL.APLCALL_NUM = APLTSK.APLTSK_APLCALL
THEN
ROUND((APLTSK.APLTSK_FEND - APLTSK.APLTSK_FBEGIN)* (24 * 60)*60)
END
)
Вот результат, который я получаю, когда пытаюсь 'SUM'
https://i.stack.imgur.com/OtFn3.jpg)
Iполучил только один результат строки, а не сумму всех строк, удовлетворяющих условию.Мне нужен один и тот же результат «2403» для всех строк, удовлетворяющих условию.
Я попытался сгруппировать в подпрограмме выбора внутри случая, но получил «однострочный подзапрос, возвращающий более одной строки», какрезультат
SUM (
CASE
WHEN
APLFTSK.APLFTSK_CODE = 'AAC'
AND APLCALL.APLCALL_NUM = APLTSK.APLTSK_APLCALL
THEN
(
SELECT
ROUND((APLTSK.APLTSK_FEND - APLTSK.APLTSK_FBEGIN)* (24 * 60)*60)
FROM APLTSK, APLFTSK
GROUP BY APLTSK.APLTSK_NUM,APLFTSK.APLFTSK_CODE
)
END
)
Я не знаю, как справиться с этой функцией в этом случае.Я прочитал несколько примеров того, как использовать функцию 'SUM' в Oracle, но я не знаю, как применить ее к моему делу.Большую часть времени «СУММА» сводится к получению результатов различных столбцов в одной строке.
Заранее благодарим за помощь