SQL'左外连接与2个右表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL'左外连接与2个右表相关的知识,希望对你有一定的参考价值。

从 sql 教程中 https:/www.w3schools.comsqltrysql.asp?filename=trysql_select_join_left,

当右表没有 "CustomerID"(连接的键)时,它会将行值留为空。

我的问题是,对于那些在右表中没有记录的行,我是否可以尝试用第二个表进行 "左外连接"?

这样最终的结果会有一些行与第一个右表连接,而一些行与第二个右表连接?

答案

你可以使用两个连接和 coalesce 您要查询的列。

SELECT    t.id, t.col1, COALESCE(j1.joined_col, j2.joined_col)
FROM      t
LEFT JOIN j1 ON t.id = j1.id
LEFT JOIN j2 ON t.id = j2.id

以上是关于SQL'左外连接与2个右表的主要内容,如果未能解决你的问题,请参考以下文章

每组右表的左外连接?

左外连接与右外连接区别?

oracle 左外连接如果右表中有重复数据如何处理?

内连接与左外链接的区别

左外连接右外连接内连接全连接的概念

SQL——左连接(Left join)右连接(Right join)内连接(Inner join)