create or replace function isHoliday(dateOfYear varchar,holiday varchar,workday varchar) return boolean is

Result boolean;

n_number number(1);--返回为周几 1为周日 。。。7为周六

begin

if instr(holiday,to_char(to_date(dateOfYear,'yyyy-mm-dd'),'yyyy-mm-dd'),1,1) >0 then --如果当前日期在节假日中则返回true

Result := true;

else

SELECT to_number(to_char(to_date(dateOfYear,'yyyy-mm-dd'),'D')) into n_number FROM DUAL; --查询当前日期是周几

if(n_number !=1 and n_number != 7) then --如果当前日期不是周六和周日则返回false

Result := false;

else

if instr(workday,to_char(to_date(dateOfYear,'yyyy-mm-dd'),'yyyy-mm-dd'),1,1) >0 then --如果当前日期在工作日中则返回false

Result := false;

else --如果当前日期不在工作日中则返回true

Result := true;

end if;

end if;

end if;

return(Result);

end isHoliday;

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐