我需要向他们报告的员工没有存储在一个名为employee_time等表中的考勤卡输入的时间。查找记录这不/的确存在
我的问题是要找到谁没有进入时间说周的人。
我已经使用了NOT IN发现不存在于表中,因此,如果已经输入记录不存在任何时候员工ID。这很好。
Select
e.userName,
et.dateStart,
et.dateEnd
From employee_time et,
employee e
Where
e.employee_id NOT IN (Select employee_id from employee_time
where et.dateStart = date and
et.end_date = date)
Group by
e.userName,
et.startDate,
et.endDate
的问题是应用程序,当一个人导航到员工的时间输入页面它创造纪录的员工,如果员工不进入任何时间,结果是零小时的记录。但是这个记录现在存在。因此,不会在上面的查询可以发现,我已经使用了以下查找其总计记录= 0
Select
e.userName,
et.dateStart,
et.dateEnd,
SUM(et.hoursTotal) AS total
From employee_time et,
employee e
Where
e.employee_id = et.employee_id and
et.hours_total = 0
Group by
e.userName,
et.startDate,
et.endDate
这也非常实用,但是我需要与他们结婚,但一直不成功的日期。你能帮我吗?
你在这两个查询的“联姻”想什么实际输出? –
你想用'hours_total' = 0来对待记录,就好像它们不存在一样? 'hours_total <> 0'? –
我想要的输出是employee_ids,所以我能够访问用户名并将其放入报告中,表示没有输入时间。 – Bman