Используйте TRUNC
для обрезания даты до полуночи, а затем NEXT_DAY
для получения следующего воскресенья:
SELECT trading_interval,
NEXT_DAY( TRUNC( trading_interval ), 'SUNDAY' ) AS week_ending
FROM your_table;
Итак, для тестовых данных:
CREATE TABLE your_table ( trading_interval ) AS
SELECT DATE '2020-03-02' + INTERVAL '08:30' HOUR TO MINUTE FROM DUAL UNION ALL
SELECT DATE '2020-02-29' + INTERVAL '19:00' HOUR TO MINUTE FROM DUAL;
Это выводит:
TRADING_INTERVAL | WEEK_ENDING
:------------------ | :------------------
2020-03-02 08:30:00 | 2020-03-08 00:00:00
2020-02-29 19:00:00 | 2020-03-01 00:00:00
дБ <> скрипка здесь