MySQL左连接左表数据显示不全的原因

时间:2024-03-04 12:24:58

A表
id aname
1 张三
2 李四

B表
id score aid bname year
1 89 1 语文 2020
2 91 1 数学 2019


select aname,bname,score from A left join B on A.id=B.aid where year=\'2015\'


查询结果

张三 语文 90

select aname,bname,score from A left join B on A.id=B.aid and year=\'2015\'

查询结果

张三 语文 90
李四 null null

如果把所有的查询条件都放在WHERE里则会出现inner join的情况,所以把右表的条件放在ON后面用and连接,就会显示左表所有的数据