【发布时间】:2018-04-08 15:27:59
【问题描述】:
select log_id as attendanceId,l.user_id as employeeId,l.log_date as attnInDate,emp.emp_name as
employeeName,l.in_remarks as inRemarks,emp.dept_id as departmentId,fn_get_hr_dept_name(emp.dept_id) as
departmentName, l.out_remarks as outRemarks,group_concat(CASE WHEN log_date = log_date THEN log_time ELSE '' END) AS logTimings,MIN(CASE WHEN log_date = log_date THEN log_time ELSE NULL END) inTime1,MAX(CASE WHEN log_date = log_date THEN log_time ELSE NULL END) inTime2,MAX(CASE WHEN log_date = log_date THEN log_time ELSE NULL END) outTime1,TIME_FORMAT(timediff(MAX(CASE WHEN log_date = log_date THEN log_time ELSE NULL END),MIN(CASE WHEN log_date = log_date THEN log_time ELSE NULL END)), '%H:%i') as workingHrsMonth
from at_hr_logs_2017_October l,at_hr_emp emp where log_date=curdate()
and l.user_id=emp.emp_code and emp.dept_id=5 and 6 group by user_id;
想像dept_id=5,6,7,8那样传递dept值
有关此的任何解决方案请联系我。
【问题讨论】:
-
您可能想查看
IN()运算符:dev.mysql.com/doc/refman/5.7/en/…。您应该考虑查看常见问题解答How to Ask,了解如何提出好的问题,以便获得好的答案。 -
样本输入和输出现在非常宝贵。我怀疑您需要的不仅仅是使用
WHERE IN (...),但在我看到一些数据之前我无法确定。
标签: mysql