ITPub博客

首页 > 应用开发 > IT综合 > 计算工作时间的问题

计算工作时间的问题

原创 IT综合 作者:love2008 时间:2007-01-11 23:22:20 0 删除 编辑

计算工作时间的问题

[@more@]

网上很多这个方法,但是发现大部分都是PL/SQL的。所以自己准备实验下看能否用一个SQL语句来实现。

业务是24小时运作,以下四个时间段是休息时间:
01:00--03:00
07:00--08:30
12:00--13:30
18:00--18:50
我的解决方法:
with c as(
select to_date('2:30','hh24:mi')+rownum/1440 a from dual
connect by to_date('2:30','hh24:mi')+rownum/1440<30 /> start with rownum=1)
select count(*) from c
where c.a<00 /> (c.a>to_date('03:00','hh24:mi') and c.a<00 /> (c.a>to_date('08:30','hh24:mi') and c.a<00 /> (c.a>to_date('13:30','hh24:mi') and c.a<00 /> c.a>to_date('18:50','hh24:mi');
这个是计算早上2:30分到早上5:30的案例
也可以另外写个表,然后把休息时间(起始时间~结束时间)写进去。这样会灵活很多

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/728254/viewspace-889932/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 行列转换的问题
请登录后发表评论 登录
全部评论

注册时间:2007-12-10

  • 博文量
    78
  • 访问量
    1116084