簡體   English   中英

Spark Scala,合並兩個列數據幀,每次都復制第二個 dataframe

[英]Spark Scala, merging two columnar dataframes duplicating the second dataframe each time

我想合並 2 列或 2 個數據框,如 df1

+--+
|id|
+--+
|1 |
|2 |
|3 |
+--+

df2 --> 這個也可以是一個列表

+--+
|m |
+--+
|A |
|B |
|C |
+--+

我想要作為結果表

+--+--+
|id|m |
+--+--+
|1 |A |
|1 |B |
|1 |C |
|2 |A |
|2 |B |
|2 |C |
|3 |A |
|3 |B |
|3 |C |
+--+--+

def crossJoin(right: org.apache.spark.sql.Dataset[_]): org.apache.spark.sql.DataFrame

使用crossJoin function 您可以獲得相同的結果。 請檢查下面的代碼。

scala> dfa.show
+---+
| id|
+---+
|  1|
|  2|
|  3|
+---+


scala> dfb.show
+---+
|  m|
+---+
|  A|
|  B|
|  C|
+---+


scala> dfa.crossJoin(dfb).orderBy($"id".asc).show(false)
+---+---+
|id |m  |
+---+---+
|1  |B  |
|1  |A  |
|1  |C  |
|2  |A  |
|2  |B  |
|2  |C  |
|3  |C  |
|3  |B  |
|3  |A  |
+---+---+

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM