Oracle星期几问题[重复]

bgibtngc  于 2023-05-16  发布在  Oracle
关注(0)|答案(2)|浏览(123)

此问题已在此处有答案

oracle where clause is not working with sysdate [duplicate](2个答案)
Extracting day in Date(4个答案)
6天前关闭。
下面的语句返回了正确的星期几,但是当表达式在case子句中使用时,它不起作用。

Select to_char(SYSDATE,'Day') Dwo, 
       case when to_char(SYSDATE,'Day')='Thursday' 
            then 'BusDay' 
            else 'Non bus day' 
       end
 from DUAL;
yvfmudvl

yvfmudvl1#

Oracle倾向于在日期名称中添加空格。使用'FMDay'而不是'Day'来防止这种情况。
顺便说一句:你依赖于你的数据库会话被设置为英语。最好明确地告诉TO_CHAR使用哪种语言:

to_char(SYSDATE, 'FMDay', 'NLS_DATE_LANGUAGE=american')
iswrvxsc

iswrvxsc2#

select case when to_char(sysdate,'d')=5  --  (1 = Sunday ... 7 = Saturday)
            then 'BusDay' 
            else 'Non bus day' 
       end 
from DUAL;

相关问题