繁体   English   中英

第二个表上的 SQL 连接所有不同的行显示两个表中的一列

[英]SQL join on second table all distinct rows showing a column from both tables

这可能是一个非常简单的 sql,但是对于我的生活,我似乎无法获得所需的结果。

出于说明目的,我有两个表,表 A 和表 B,每个表中都有以下记录。

在此先感谢您,并对这里的新手格式表示歉意。

表A

表B

预期结果

结果表

您正在寻找full join

select id, a.col1, b.col2
from a full join
     b
     using (id);

如果您的数据库不支持full join ,我建议:

select a.id, a.col1, b.col2
from a left join
     b
     on a.id = b.id
union all
select b.id, null, b.col2
from b
where not exists (select 1 from a where a.id = b.id);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM