python - 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
解决方案
这是一个优先级查询。您似乎想要基于第一列的所有行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);
推荐阅读
- c# - 禁用 ToolStripMenuItem 突出显示而不丢失背景
- intellij-idea - Mac 上的 IntelliJ Find Action 错误打开终端应用程序
- javascript - 从 setTimeout() 返回一个值
- opencv - 如何知道直方图是否具有更多方差?
- python - 变量类型从一个函数变为另一个,从“str”变为“NoneType”
- java - 当 url 包含字符串“?error”时,WebSphere 不显示网页元素
- ssms-2014 - 当 distinct 不是 distinct 时,如何限制查询结果?
- swift - 制作与赋值不兼容的 Int 类型别名
- python - 关于 pd.dataframe.reset_index() 中 drop=True 的问题
- asp.net-core-webapi - NServiceBus IP 地址