选择员工未输入日志的日期

时间:2014-05-09 06:45:06

标签: mysql

我有一个系统,员工可以输入他们的每日日志详细信息。

我想要一个mysql查询,它提供一周的报告,如果有人没有输入他们的日志,也会返回null。

这是我尝试过的。

select employee_log.*,employee.* from employee_log
left join employee on (employee_log.employee_id = employee.id)
group by employee.id

但它只在员工输入日志时返回数据。但我还想表明,如果有任何员工在某一天没有输入他们的日志。

2 个答案:

答案 0 :(得分:1)

试试这样:

select * from employee
left join employee_log on (employee.id = employee_log.employee_id)
group by employee.id

您希望获取他们记录或未记录的员工的所有详细信息,因此请使用左联接employee left join employee_log

答案 1 :(得分:1)

  

LEFT JOIN关键字返回左表(table1)中的所有行,   使用右表(table2)中的匹配行。结果是   当没有匹配时,右侧为NULL。

在编写SQL语句时,您需要将employee_log与employee交换,因为目前您从employee_log返回所有行。

select employee_log.*,employee.* from employee
left join employee_log on (employee_log.employee_id = employee.id)
group by employee.id