SQL 中的左外部联接,右侧 table 中缺少数据

Left outer join in SQL with data missing in right table

我在 Mysql 数据库中有以下数据库模式

用户

出席人数

现在,对于给定的日期范围,我想构建一个报告,其中列出一个用户和另一列,说明他们当天是否在场。

我试图通过以下查询使用 Left Outer Join 来完成它

select * from users left outer join attendance on users.id = attendance.user_id where users.id in (11, 12);

如何修改上述查询以便我可以获取报告?

您可以使用如下查询:

select u.*, 
       IF(a.id IS NOT NULL, 'Present', 'Not Present') AS IsPresent 
from users u
left outer join attendance a
   on u.id = a.user_id and a.checked_on = ?
where u.id in (11, 12);