`

left join 和多表查询的区别

阅读更多
left join和 多表查询

left join 所有的工作以left为准 以mark为准,所以
1 如果mark中有空,那么就会显示一条空记录
2 如果mark中有一条记录在stu中找不到,同样这条记录也会显示出来


select * from mark t,stu s where t.stu_id=s.id

select * from mark t left join stu s on t.stu_id=s.id

例如

mark
id stu_id mark

1 1 79
2 1 66
4 2 68

stu
id name
1 yang
2 liu
3 lv

此时查询出来的记录是一样的

id stu_id mark id1 name
1 1 79 1 yang
2 1 66 1 yang
4 2 68 2 liu

如果第一个表加入记录

3 空 22
5 4 55
那么left join的结果变成

id stu_id mark id1 name
1 1 79 1 yang
2 1 66 1 yang
4 2 68 2 liu
3 空 22 空 空
5 4 55 空 空
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics