oracle next_day函数使用天数

时间:2014-01-13 06:27:01

标签: sql oracle plsql

DECLARE
     l_d NUMBER;
     l_day VARCHAR2(3);
     l_new_day date;
BEGIN
SELECT my_day
INTO l_d
FROM ...
WHERE id = ...; --results as 2 (monday)

l_day := CASE l_d 
          WHEN 1 THEN 'SUN'
          WHEN 2 THEN 'MON'
          WHEN 3 THEN 'TUE'
          WHEN 4 THEN 'WED'
          WHEN 5 THEN 'THU'
          WHEN 6 THEN 'FRI'
          WHEN 7 THEN 'SAT'
         END ;
     l_new_day := next_day( sysdate, l_day);
END;

我们有没有使用CASE部分的简单方法? 感谢您提前提供任何帮助;)

2 个答案:

答案 0 :(得分:3)

您无需找到日期名称,只需使用日期编号

即可
SQL> SELECT next_day( sysdate, 2) FROM DUAL;

NEXT_DAY(SYSDATE,2
------------------
20-JAN-14

答案 1 :(得分:0)

我认为此查询可以帮助您:

Select to_char(sysdate, 'DY') FROM dual;
相关问题