如果我有多个连接,而在第二个连接中,我使用左连接。 通过使用此子句,它将从两个第一个表或仅从第二个表中获取所有数据。
谢谢
答案 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
结果表格包含id
和a
中的所有b
,如果某个部门不在NULL
,则返回id
{{1}} }}。
因此,要回答您的问题,联接会考虑查询中的所有数据。但是,输出表取决于您使用的连接。如果仍然存在混淆,您可以参考this question来解决类似问题。