Joh*_*ohn 4 scala join dataframe apache-spark
我有两个这样的数据框:
DF1:
id | name
---
1 | abc
2 | xyz
Run Code Online (Sandbox Code Playgroud)
DF2:
id | course
---
1 | c1
1 | c2
1 | c3
2 | c1
2 | c3
Run Code Online (Sandbox Code Playgroud)
当我执行 df1 和 df2 的 left_outer 或内部连接时,我希望得到的数据帧为:
id | name | course
---
1 | abc | c1
---
2 | xyz | c1
---
Run Code Online (Sandbox Code Playgroud)
我加入时id 1是c1,c2还是c3都没有关系;但我只需要一张唱片。
请让我知道如何在火花中实现这一目标。
谢谢,约翰
如何根据列删除所有重复记录,该列id将为每个唯一记录仅保留一条记录id,然后将其加入df1:
df1.join(df2.dropDuplicates(Seq("id")), Seq("id"), "inner").show
+---+----+------+
| id|name|course|
+---+----+------+
| 1| abc| c1|
| 2| xyz| c1|
+---+----+------+
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2783 次 |
| 最近记录: |