Oracle SQL 获取上周日期:周一至周三返回上上周日和上周六,周四至周日返回上周日和本周六
您可以使用以下 SQL 语句来实现您的需求:
SELECT CASE
WHEN TO_CHAR(SYSDATE, 'DAY') IN ('MONDAY', 'TUESDAY', 'WEDNESDAY') THEN
TRUNC(SYSDATE) - 10 AS "上上周日",
TRUNC(SYSDATE) - 4 AS "上周六"
WHEN TO_CHAR(SYSDATE, 'DAY') IN ('THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY') THEN
TRUNC(SYSDATE) - 3 AS "上周日",
TRUNC(SYSDATE) - 1 AS "本周六"
END
FROM DUAL;
这条 SQL 语句使用了CASE语句来根据当前日期的星期几进行判断。如果当前日期为周一到周三,则返回上上周日和上周六的日期;如果当前日期为周四到周日,则返回上周日和本周六的日期。
原文地址: https://www.cveoy.top/t/topic/p6zP 著作权归作者所有。请勿转载和采集!