【发布时间】:2018-06-21 11:42:20
【问题描述】:
我有两个数据集,如下图-
历史:
+-------+-------+-----------+
|prod_id|prod_cd| prod_desc|
+-------+-------+-----------+
| 42546|Firefox|Firefox 4.0|
| 12432| Chrome| Chrome 1.0|
+-------+-------+-----------+
当前:
+-------+-------+----------+
|prod_id|prod_cd| prod_desc|
+-------+-------+----------+
| 53243| IE| IE 2.0|
| 12432| Chrome|Chrome 1.5|
+-------+-------+----------+
我想在两个表(数据帧)上运行(火花)sql 查询并获取所有历史和新条目,两者之间的共同点将从最新表中选择并删除旧表(类似于更新那些相应的行)。
所以,我的输出表应该是 -
+-------+-------+-----------+
|prod_id|prod_cd| prod_desc|
+-------+-------+-----------+
| 42546|Firefox|Firefox 4.0|
| 53243| IE| IE 2.0|
| 12432| Chrome| Chrome 1.5|
+-------+-------+-----------+
在第 0 天完成初始加载后,我在增量/增量加载期间进行了协调工作,但很长一段时间以来我都没有接触过数据仓库,因此失去了这种清晰度。
union 后需要使用rank函数吗?还是有更好/更快的方法?非常有义务提供帮助。
【问题讨论】:
标签: mysql sql pyspark-sql