【发布时间】:2020-06-12 11:42:37
【问题描述】:
我有以下表格
学生桌
id name
1 A1
2 A2
3 A3
和考勤表
student_id status date
1 P 2020-02-14
2 P 2020-02-14
1 A 202-02-15
我想要的是,无论数据表中是否存在数据,都应显示所有日期的出勤率。我尝试了以下查询
SELECT student.name, attendance.status
from student
LEFT JOIN attendance ON student.id = attendance.student_id
AND attendance.date = '2020-02-14'
通过上述查询,我得到的输出为
id name status date
1 A1 P 2020-02-14
2 A2 P 2020-02-14
3 A3 null null
但我希望输出是
id name status date
1 A1 P 2020-02-14
2 A2 P 2020-02-14
3 A3 null 2020-02-14
1 A1 A 2020-02-15
2 A2 null 2020-02-15
3 A3 null 2020-02-15
是否可以使用单个查询来实现上述输出?还是我需要通过将查询输出转换成JSON来做一些操作才能得到想要的输出?
【问题讨论】: