首页 > 解决方案 > Pyspark,连接,sql,外部连接

问题描述

我有这样的要求......我想外连接两个表 A 和 B(例如),这样如果键匹配我的输出应该有表 B 的值(不是 A 列值)Ex

A
a b
1 abc
2 fgh
3 xyz

B
a b
1 wer
6 uio

输出

a b
1 wer
2 fgh
3 xyz
6 uio

标签: pythonsqljoinpysparkouter-join

解决方案


这是一个优先级查询。您似乎想要基于第一列的所有行b,然后是不匹配的行。a

一种方法是union all

select b.*
from b
union all
select a.*
from a
where not exists (select 1 from b where b.a = a.a);

推荐阅读