如何在MySQL中进行FULL OUTER JOIN?

如何在MySQL中进行FULL OUTER JOIN?,第1张

如何在MySQL中进行FULL OUTER JOIN?

您在MySQL上没有FULL
JOINS,但是可以肯定地模拟它们。

对于从该SO问题记录下来的代码SAMPLE,您可以:

有两个表t1,t2:

SELECt * FROM t1LEFT JOIN t2 ON t1.id = t2.idUNIOnSELECt * FROM t1RIGHT JOIN t2 ON t1.id = t2.id

上面的查询适用于FULL OUTER
JOIN *** 作不会产生任何重复行的特殊情况。上面的查询取决于

UNIOn
set运算符,以删除查询模式引入的重复行。我们可以通过对第二个查询使用 反联接
模式来避免引入重复的行,然后使用UNIOn ALL集运算符将这两个集合并。在更一般的情况下,FULL OUTER JOIN将返回重复的行,我们可以这样做:

SELECt * FROM t1LEFT JOIN t2 ON t1.id = t2.idUNIOn ALLSELECt * FROM t1RIGHT JOIN t2 ON t1.id = t2.idWHERe t1.id IS NULL


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4889127.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-11
下一篇 2022-11-11

发表评论

登录后才能评论

评论列表(0条)

保存