+ -
当前位置:首页 → 问答吧 → oracle 中如何计算当前日期加三个工作日?(星期一到星期五为工作日)

oracle 中如何计算当前日期加三个工作日?(星期一到星期五为工作日)

时间:2011-12-14

来源:互联网

如题

作者: abAAASSS   发布时间: 2011-12-14

比如说今天是周二,加三个工作日应该是本周五,代码如下:
SQL code
select decode(curr.weekday, 'monday', sysdate+3,  --本周周四
'tuesday', curr.today +3,   --本周周五
'wednesday', curr.today +5, --下周周一
'thursday', curr.today +5,  --下周周二
'friday', curr.today +5,    --下周周三
'saturday', curr.today +4,  --下周周三
'sunday', curr.today +3     --下周周三
) next3day from 
(select trunc(sysdate) today, to_char(trunc(sysdate),'day','nls_date_language=american') weekday from dual) curr;

作者: yixilan   发布时间: 2011-12-14

引用 1 楼 yixilan 的回复:

比如说今天是周二,加三个工作日应该是本周五,代码如下:
SQL code
select decode(curr.weekday, 'monday', sysdate+3, --本周周四
'tuesday', curr.today +3, --本周周五
'wednesday', curr.today +5, --下周周一
'thursday', curr.today +5, --下周周……

顶,好办法!
to 兰姐,
如果有指定的节假日,该怎么处理呢?

作者: hebeishimeng   发布时间: 2011-12-14

用存储过程处理这样的问题啊,整理好逻辑,应该不是什么大问题

作者: java3344520   发布时间: 2011-12-14

引用 2 楼 hebeishimeng 的回复:
有指定的节假日

把你们公司或者客户指定的节假日,存到一张表里。
到时候判断一下就行。

作者: yixilan   发布时间: 2011-12-14

这里使用存储过程比较好的

作者: m540920181   发布时间: 2011-12-14

谢谢。。

作者: abAAASSS   发布时间: 2011-12-14

热门下载

更多