我见过名为LEFT OUTER JOIN或RIGHT OUTER JOIN的连接.在某些地方,我见过LEFT JOIN或RIGHT JOIN.我很困惑.
我在2天前发布了一个问题,但我无法理解解决方案提供的链接.
这些类型的连接是否相同,或两者之间是否存在某些差异?
Udo*_*ein 24
他们引用的第一个链接为您提供:
INNER JOIN:当两个表中都匹配时返回行.
LEFT JOIN / LEFT OUTER JOIN:返回左表中的所有行,即使右表中没有匹配项也是如此.
RIGHT JOIN / RIGHT OUTER JOIN:返回右表中的所有行,即使左表中没有匹配项也是如此.
FULL JOIN / FULL OUTER JOIN / OUTER JOIN:当其中一个表中存在匹配项时返回行.
SELF JOIN:用于将表连接到自身,就像表是两个表一样,临时重命名SQL语句中的至少一个表.
CARTESIAN JOIN:返回两个或多个连接表中的记录集的笛卡尔积.
该self join实际上不是special join.它只是反映了你可以自己加入一个表的事实.这样做你必须使用别名来解决它在同一语句中出现多次的事实.
的cartesian join可以被认为是inner join没有限制的条件.或者您可以将a inner join视为cartesian join具有附加限制(连接条件).