首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

关于两个日期间距工作日的oracle sql实现

2012-07-15 
关于两个日期间隔工作日的oracle sql实现sysdate是系统时间 xx.dd是从数据库表中取出的时间,执行结果取出

关于两个日期间隔工作日的oracle sql实现

sysdate是系统时间 xx.dd是从数据库表中取出的时间,执行结果取出所有当前系统时间在5个工作日以后的结果集。

?

?

select * from tableName

?

where

(trunc(sysdate -x.dd) -
((case WHEN (8 - to_number(to_char(x.dd, 'D'))) >
trunc(sysdate - x.dd) + 1 THEN
0
ELSE
trunc((trunc(sysdate - x.dd) -
(8 - to_number(to_char(x.dd, 'D')))) / 7) + 1
END)
+
(case WHEN mod(8 - to_char(x.dd, 'D'), 7) >
trunc(sysdate - x.dd) - 1 THEN
0
ELSE
trunc((trunc(sysdate - x.dd) -
(mod(8 - to_char(x.dd, 'D'), 7) + 1)) / 7) + 1
END))
) >=5

?

热点排行