我的任务是查看我所在部门中前三名成绩优异者的姓名。高成就者是一名普通员工,他在公司工作了一个月的最长时间,并且在本月截止日期前分配给他/她的所有任务都是固定的。我的问题:
SELECT distinct top 3 Regular_Employees.username ,
DATEDIFF(HOUR,start_time,end_time)
FROM Regular_Employees INNER JOIN Staff_Members on
Regular_Employees.username=Staff_Members.username INNER JOIN Tasks ON
Staff_Members.username=Tasks.regular_employee INNER join Attendance_Records
on Regular_Employees.username = Attendance_Records.staff
WHERE MONTH(deadline) = MONTH('11/11/2017') AND YEAR(deadline) =
YEAR('11/11/2017') AND department=Staff_Members.department
ORDER BY DATEDIFF(HOUR,start_time,end_time) DESC
我想在11月检索前3条记录,结果是
daniel.magdi 2
farid.elsoury 2
joy.ahmed 2
员工是合适的员工,而记录'2'是一天的记录,而不是整个月的记录。如何计算每个员工每个月的记录并查看结果?
我想将日期插入'11/11/2017',结果将是 结果
Employee HOURS
daniel.magdi 180
farid.elsoury 179
joy.ahmed 175
这些是11月份的最高记录