如何列出员工是否每周记录时间

时间:2013-12-12 18:16:27

标签: mysql sql pivot

我有这个数据库,我记录时间戳。它有以下列出的字段。

emplid,end_date,day0,day1,day2,day3,day4,day5,day6  

end_date是该周(每个星期日)的一周中的最后一天。因此,如果有人在那里记录了5周的时间,他们应该有5行,每行有不同的结束日期。我正在尝试做的是创建一个人员列表,忘记记录那些时间直到今天的任何一周。我想要一行显示到目前为止所有周的列表。 E.g

emplid,Week1,Week2,Week3,Week4,Week5.
12345 ,1    ,1    ,1    ,0    ,1

这就是我所拥有的。

SELECT COUNT(end_date) AS Week1, 
       COUNT(end_date) AS Week2 
FROM   `aca_time_record` 
WHERE  `emplid` = 025580 
HAVING week1 = '2013-10-05' 
       AND week2 = '2013-10-12' 

1 个答案:

答案 0 :(得分:0)

您需要计算每个员工每周的非打孔天数,然后将其转换为最终结构。有关详细信息,请参阅此答案 - MySQL pivot table