使用SQL的OUTER JOIN有哪些好例子?

nop*_*ole 6 sql join left-join outer-join

我经常在面试中被问到"什么是SQL中的外部联接"?

虽然可以回答,但我想知道使用(LEFT)OUTER JOIN的一些经典和好的现实生活例子是什么?

Raj*_*mal 6

在Customers and Orders表的Northwind数据库中.

进行内部联接只会为您提供已下订单的客户.

执行外部联接将获得已下订单的客户的所有客户和订单.


CTD*_*Dev 6

要添加到Robin Day的答案,您还可以使用Left Outer Join仅通过检查NULL来获取未下订单的客户.


SELECT *
FROM  Customer
  LEFT OUTER JOIN Order 
    ON Customer.CustomerId = Order.CustomerId
WHERE Order.CustomerId IS NULL
Run Code Online (Sandbox Code Playgroud)


Pra*_*ana 5

以下是左外连接的视觉重新定位

SELECT <select_list>
FROM Table_A A
LEFT JOIN Table_B B
ON A.Key = B.Key
Run Code Online (Sandbox Code Playgroud)

替代文字

在下面的文章http://www.codeproject.com/KB/database/Visual_SQL_Joins.aspx中阅读有关联接的更多信息 (必读的最佳文章之一)