与同一查询的内连接相比,是否可以为左连接提供较少的记录?
如果是,在什么情况下?由于我确实理解内连接记录将出现在所有类型的连接中,除非特别查询不符合,因此按照规范,完全连接,左连接和右连接应该包含内连接记录。
答案 0 :(得分:0)
对于简单查询,没有。对于复杂查询,它是可能的。在以下查询中,将内部更改为左侧可能会导致添加由B上的条件抑制的记录。
SELECT *
FROM A
LEFT JOIN B
INNER JOIN C
ON B.c_id = C.id
ON A.b_id = B.id
WHERE B.status_xt IS NULL or B.status_xt <> 'foo';
(注意,ON
子句的顺序意味着B在它们的并集连接到A之前连接到C.然后应用WHERE
。此顺序对行为很重要。)