首页新闻找找看学习计划

(急)根据一个月的打卡详情统计每个员工的打卡记录

0
悬赏园豆:15 [已关闭问题] 关闭于 2012-05-11 10:07

各位大侠们,请教一个问题了,希望不吝指教,灰常感激啊!

现在做一个打卡的报表

在表中查询打卡记录是这个样子的

上图表示的字段分别是工号和上班打卡时间和下班打卡时间,然后就是想要得到一个月内的所有打卡记录格式如下

工号          27日                     30日                     31日                     01

000014     上班打卡和下班打卡 上班打卡和下班打卡   上班打卡和下班打卡  上班打卡和下班打卡

依次这样。就是统计每一个员工在一个月的工作日内的打卡详情,本人试了好多方法还是不行,很是纠结,希望给予指教!

问题补充:

要是oracle数据库的!

笨笨的菜鸟的主页 笨笨的菜鸟 | 初学一级 | 园豆:40
提问于:2012-05-03 14:58
< >
分享
所有回答(3)
0

点我

这个是我以前回答的一个问题,跟你这个差不多。

写代码的小2B | 园豆:4346 (老鸟四级) | 2012-05-03 15:23
0

实际就是个行转列的问题,我这有个是转成周的

select max(case when datepart(dw,timestr)=1 then contentstr end) as sunday ,
                          max(case when datepart(dw,timestr)=2 then contentstr end) as monday ,
                          max(case when datepart(dw,timestr)=3 then contentstr end) as tuesday ,
                          max(case when datepart(dw,timestr)=4 then contentstr end) as Wednesday ,
                          max(case when datepart(dw,timestr)=5 then contentstr end) as Thursday,
                          max(case when datepart(dw,timestr)=6 then contentstr end) as Friday,
                          max(case when datepart(dw,timestr)=7 then contentstr end) as Saturday 
                          from (select contentstr,timestr, row_number() over(partition by 
                          datepart(dw,timestr) order by id) as dayofweek from  ERPWorkRiZhi 
                          where username=@username and timestr BETWEEN @starttime and @endtime) as a group by dayofweek
happydaily | 园豆:581 (小虾三级) | 2012-05-03 16:12

要是三十天的话,还有分三十个写么?

支持(0) 反对(0) 木兰香 | 园豆:252 (菜鸟二级) | 2012-05-04 08:54

@木兰香: 没有办法只有分成三十一天来写

支持(0) 反对(0) happydaily | 园豆:581 (小虾三级) | 2012-05-04 10:20
0

行转列的问题

--宁静以致远-- | 园豆:364 (菜鸟二级) | 2012-05-04 08:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册