在MySQL中计算时差
在这种语法中,它只确定员工的第一个输入和最后一个输出,但是 我想问一下,我如何计算员工的第一次入职和最后一次出职之间的时差或总时间在MySQL中计算时差,mysql,Mysql,在这种语法中,它只确定员工的第一个输入和最后一个输出,但是 我想问一下,我如何计算员工的第一次入职和最后一次出职之间的时差或总时间 例如,员工的第一个上班时间是上午9:00:00,最后一个下班时间是下午16:00:00。如何计算该员工的总工时?请尝试以下操作: SELECT empno , date_created , min(CASE WHEN status = 0 THEN time_created END) time_in, max(CASE WHEN status = 1 THEN t
例如,员工的第一个上班时间是上午9:00:00,最后一个下班时间是下午16:00:00。如何计算该员工的总工时?请尝试以下操作:
SELECT empno , date_created ,
min(CASE WHEN status = 0 THEN time_created END) time_in,
max(CASE WHEN status = 1 THEN time_created END) time_out
FROM biometrics
WHERE empno = 3
GROUP BY empno , date_created
通过这个,你可以发现firstin和lastout之间的小时差异
select
empno,
date_created,
time_in,
time_out,
time_format(timediff(time_out, time_in), '%H:%i') as total_time
from
(
SELECT empno, date_created,
min(CASE WHEN status = 0 THEN time_created END) time_in,
max(CASE WHEN status = 1 THEN time_created END) time_out
FROM biometrics
WHERE empno = 3
GROUP BY empno, date_created
) t1;
从表_name中选择DATEDIFF(小时、firstin(日期时间)、lastout(日期时间))
SELECT DATEDIFF(hour, firstin(datetime), lastout(datetime)) FROM table_name