欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

left join 和多表查询的区别

程序员文章站 2022-07-13 07:59:20
...
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 空 空