2012-09-09 25 views
1

嗨我的系統上有以下計時卡結構。MYSQL計時卡摘要

enter image description here

從上面的考勤卡我需要生成,從time_inendtime_out比較start報告並將其按emp_id

enter image description here

我怎麼能像上面顯示其上的任何暗示將是巨大的。

回答

3

以下查詢執行該作業。

SELECT date, emp_id, 
    MAX(IF(event='t_in',time_in - start, 0)) AS 't1_in_diff', 
    MAX(IF(event='t_out',time_out - end, 0)) AS 't1_out_diff', 
    MAX(IF(event='b1_in',time_in - start, 0)) AS 'b1_in_diff', 
    MAX(IF(event='b1_out',time_out - end, 0)) AS 'b1_out_diff', 
FROM timecard 
GROUP BY date, emp_id; 

如果結果是陰性(time_in/TIME_OUT可以比開始/結束小),你應該設置0到總是比差的值。

+0

感謝這個解決方案工作就像一個魅力:) – genpet