记录一下数据库外连接 的不同
left join ----是左外链接,通常需要一个驱动表作为主表 例如:
1 select * from 2 3 A 4 5 left join b on A.id=b.kid 6 7 left join c on A.id=c.kid 8 9 left join d on A.id=d.kid and d.type='1' 10 11 where c.type='101'; 12 13 ---这个语句 当没有 where 条件时候会查出和A表相同数目的数据 14 ---and d.type='1' 这个条件只会限制关联d表时候的数据,其实就相当于给d表增加了一个where 条件 ,和(select * from d where d.type='1')等价,但是不会影响查出来数据的总数。 15 而最后的where是把前面所有关联表查出来的数据做了一个筛选,是最后结果的where条件。 16 left join 是主表驱动,关联若干副表,主表有数据,副表查不出数据副表就会显示null,但是主表依然会显示,当主表和副表为一对多时候,左边会显示主表重复数据,对应副表的多条数据。
FULL JOIN 全关联 左右都可为null, 并集
本文来自博客园,作者:升级打怪猴,转载请注明原文链接:https://www.cnblogs.com/soul113/p/10529241.html