使用多个连接和左连接

时间:2016-02-17 13:23:19

标签: sql-server-2012

如果我有多个连接,而在第二个连接中,我使用左连接。 通过使用此子句,它将从两个第一个表或仅从第二个表中获取所有数据。

谢谢

1 个答案:

答案 0 :(得分:1)

加入只是一种连接不同表格的方法。从理论上讲(不是计算上),对查询中使用的连接数没有限制。

请记住,一旦开始使用inner联接以外的其他内容,联接顺序就很重要。例如,a LEFT JOIN b不等同于b LEFT JOIN a

话虽如此,当你有多个联接时,应仔细解释结果。

考虑

SELECT a.id,b.name,c.department
FROM
a INNER JOIN b on a.id = b.id  
LEFT JOIN c on a.id = c.id     

结果表格包含ida中的所有b,如果某个部门不在NULL,则返回id {{1}} }}。

因此,要回答您的问题,联接会考虑查询中的所有数据。但是,输出表取决于您使用的连接。如果仍然存在混淆,您可以参考this question来解决类似问题。