left join查询时一个表没有数据其他的数据也不显示了
比如
select * from user u left join score s on u.sid=s.id
where u.name='a' and s.date='2021-01'
这样如果s没有2021年一月的数据就整个都查不出来了,我希望分数显示为空但是user表的数据还是要显示怎么办
left join查询时一个表没有数据其他的数据也不显示了
比如
select * from user u left join score s on u.sid=s.id
where u.name='a' and s.date='2021-01'
这样如果s没有2021年一月的数据就整个都查不出来了,我希望分数显示为空但是user表的数据还是要显示怎么办
你把 and s.date='2021-01' 放到 on 后面去,而不要放where后面。放where后面就是做整体条件处理了。