外连接(outer join)

    ~左外连接(LEFT OUTER JOIN或LEFT JOIN)
    ~右外连接(RIGHT OUTER JOIN或RIGHT JOIN)
    ~全外连接(FULL OUTER JOIN或FULL JOIN)
    ~交叉连接(CROSS JOIN)

左外联时间左边的表为主表,右外联时间右边的表为主表,另一表则为附表.

倘若[on部分]中仅存在两表关联条件(如:table1.a = table2.a),则主表将保证所有数据不丢失

倘若[on部分]中存在非两表关联条件(如:table1.a = 'a'),则主表将遵循该条件先对table1进行筛选再进行指定连接,因而并不能保证所有数据不丢失

使用outer join 的查询应注意where后面条件的选择, 由于外连接优先级将高于where,因此将先于where生成查询所用的临时表,where后的条件应注意防止屏蔽掉该临时表中某些字段null值,否则可能导致主表中对应数据的丢失

例:

SELECT User.Key,User.Info,Sub.Info FROM(User full outer join Sub ON User.Key=Sub.Key 
原文地址:https://www.cnblogs.com/dongzhiquan/p/1994673.html