面试中关于数据库中左连接,内连接考察比较多。
说说我自己的理解
表A
字段a 字段b
1 11
2 22
表B
字段a 字段c
1 111
3 333
左连接 以左表为主,左表的数据都会有。右连接以右表为主,右表的数据都会有。有两个结果
select * from a left join b on a.a=b.a
内连接 (备注inner可以省略!! 只留下 join 其实就是内连接)
select * from a inner join b on a.a=b.a 取他们之间的公共部分 交集 只有1条结果
外连接
select * from a outer join b on a.a=b.a 取他们之间的公共部分 共有的加上自己各自的 有三个结果