经国务院批准,国务院办公厅日前将2010年元旦、春节、清明节、劳动节、端午节、中秋节和国庆节放假调休日期的具体安排通知如下。一、元旦:1月1日至3日放假公休,共3天。二、春节:2月13日至19日放假调休,共7天。2月20日(星期六)、21日(星期日)上班。三、清明节:4月3日至5日放假公休,共3天。四、劳动节:5月1日至3日放假公休,共3天。五、端午节:6月14日至16日放假调休,共3天。6月12日(星期六)、13日(星期日)上班。六、中秋节:9月22日至24日放假调休,共3天。9月19日(星期日)、25日(星期六)上班。七、国庆节:10月1日至7日放假调休,共7天。9月26日(星期日)、10月9日(星期六)上班。
现需求如下:
由于最近公司有个考勤管理的系统,要求求出其中考勤统计中每个员工的请假时间。
如果请假日期为周六和周日或法定节假日。就把请假的时间减去相应的共有天数。
比如说我的请假单上填写的日期为:2010-05-01至2010-05-06,就说明我请假(或调休)时间为3天(因为其中有3天是节假日)
如果这请假(或调休)时间的3天里面还有周六或周日的话,就再需要减去1-2天,最后请假(或调休)时间则为2-1天。这就需要一个函数或存储过程求出一年中(以2010年为例)所有的周六和周日或节假日的具体日期数。如果节假日又恰好为周六或周日的话,(为了避免重复)那就只当作一个周六或周日的日期来看。
然后根据请假的时间段,如:2010-05-01至2010-05-06,判断其是否包含在这些日期中,若包含的话,则再用请假(或调休)的总天数减去其中包含的天数。
(如果可以的话!最好还帮我求出这些日期是该年的第几天?)
不知到各位明白了我的意思了没!
在举个例子:
2010年2月13日至19日(春节)放假调休,共7天
而我想过年时提前请假回家,请假日期为:2010年2月08日至19日.则春节(2月13日至19日放假调休,共7天) 包含在请假日期中.而2月13日至19日分别是2010年的第44天或第50天! 分如不够的话!我再开一帖! 现在项目时间紧,周一早上要用,急需各位大虾们帮忙解决!十分谢谢!
现需求如下:
由于最近公司有个考勤管理的系统,要求求出其中考勤统计中每个员工的请假时间。
如果请假日期为周六和周日或法定节假日。就把请假的时间减去相应的共有天数。
比如说我的请假单上填写的日期为:2010-05-01至2010-05-06,就说明我请假(或调休)时间为3天(因为其中有3天是节假日)
如果这请假(或调休)时间的3天里面还有周六或周日的话,就再需要减去1-2天,最后请假(或调休)时间则为2-1天。这就需要一个函数或存储过程求出一年中(以2010年为例)所有的周六和周日或节假日的具体日期数。如果节假日又恰好为周六或周日的话,(为了避免重复)那就只当作一个周六或周日的日期来看。
然后根据请假的时间段,如:2010-05-01至2010-05-06,判断其是否包含在这些日期中,若包含的话,则再用请假(或调休)的总天数减去其中包含的天数。
(如果可以的话!最好还帮我求出这些日期是该年的第几天?)
不知到各位明白了我的意思了没!
在举个例子:
2010年2月13日至19日(春节)放假调休,共7天
而我想过年时提前请假回家,请假日期为:2010年2月08日至19日.则春节(2月13日至19日放假调休,共7天) 包含在请假日期中.而2月13日至19日分别是2010年的第44天或第50天! 分如不够的话!我再开一帖! 现在项目时间紧,周一早上要用,急需各位大虾们帮忙解决!十分谢谢!
解决方案 »
- pl/sq程序块中输出的列l对齐,求解
- 内容部分相等关联查询
- 请教job新建错误 01008
- SQL2000、mySQL和ORACLE数据库有哪些优点?
- 在线求助:SQL PLUS可以登录儿EMC登录不上的原因
- 请教crebas.sql文件可以在powerdesign中打开吗?
- 将oracle中的数据导入到mysql
- 用select语句选出来的10万条记录,我就想要第三条记录,怎么做呢
- 高分求教,oracle优化
- oracle服务启动与Myeclipse连接oracle数据库
- 有点难度的查询
- --Oracle从Windows Server2003移植到RHEL5.3(64Bit),需要注意些什么?--
workCalendar(wdate date primary key,wkType int); -- 0 工作日,7 周未,9 法定假日
wdate wkType
----------- ------
2010-Jan-01 0
2010-Jan-02 7
2010-Jan-03 7
2010-Jan-04 0
2010-Jan-05 0
2010-Jan-06 0
2010-Jan-07 0
2010-Jan-08 0
2010-Jan-09 7
2010-Jan-10 7
2010-Jan-11 0
2010-Jan-12 0
2010-Jan-13 0
2010-Jan-14 0
2010-Jan-15 0
2010-Jan-16 7
2010-Jan-17 7
2010-Jan-18 0
2010-Jan-19 0
2010-Jan-20 0
2010-Jan-21 0
2010-Jan-22 0
2010-Jan-23 7
2010-Jan-24 7
2010-Jan-25 0
2010-Jan-26 0
2010-Jan-27 0
2010-Jan-28 0
2010-Jan-29 0
2010-Jan-30 7
2010-Jan-31 7
2010-Feb-01 0
2010-Feb-02 0
2010-Feb-03 0
2010-Feb-04 0
2010-Feb-05 0
2010-Feb-06 7
2010-Feb-07 7
2010-Feb-08 0
2010-Feb-09 0
2010-Feb-10 0
2010-Feb-11 0
2010-Feb-12 0
2010-Feb-13 9
2010-Feb-14 9
2010-Feb-15 9
2010-Feb-16 7
2010-Feb-17 7
2010-Feb-18 7
2010-Feb-19 7
2010-Feb-20 0
2010-Feb-21 0
2010-Feb-22 0
2010-Feb-23 0
2010-Feb-24 0
2010-Feb-25 0
2010-Feb-26 0
2010-Feb-27 7
2010-Feb-28 7
2010-Mar-01 0
2010-Mar-02 0
....
顶这个。
返回该年的第几天用函数 SELECT TO_CHAR(SYSDATE,'DDD') FROM DUAL; 就可以知道。