Apache spark 外部和外部之间有区别吗;Spark SQL中的完整外部?
Spark SQL文档指定Apache spark 外部和外部之间有区别吗;Spark SQL中的完整外部?,apache-spark,apache-spark-sql,spark-dataframe,Apache Spark,Apache Spark Sql,Spark Dataframe,Spark SQL文档指定join()支持以下连接类型: 必须是其中之一:内、交叉、外、满、满、外、左、, 左外、右外、右外、左半和左反 outer和full\u outer之间有什么区别吗?我怀疑不是,我怀疑它们只是彼此的同义词,但我想弄清楚。在outer和full\u outer之间没有区别-它们是一样的。有关演示,请参见以下答案:Spark v2.4.0连接代码(已抑制uu): 所以Spark真正支持:内部、完全外部、左外部、右外部、左半、左反和交叉 举个简单的例子: +---+----
join()
支持以下连接类型:
必须是其中之一:内、交叉、外、满、满、外、左、,
左外、右外、右外、左半和左反
outer
和full\u outer
之间有什么区别吗?我怀疑不是,我怀疑它们只是彼此的同义词,但我想弄清楚。在outer
和full\u outer
之间没有区别-它们是一样的。有关演示,请参见以下答案:Spark v2.4.0连接代码(已抑制uu):
所以Spark真正支持:内部、完全外部、左外部、右外部、左半、左反和交叉
举个简单的例子:
+---+-----+
| id|value|
+---+-----+
| 1| A1|
| 2| A2|
| 3| A3|
| 4| A4|
+---+-----+
以及:
你会得到:
外接
+----+-----+----+-----+
| id|value| id|value|
+----+-----+----+-----+
|null| null| 5| A5|
|null| null| 6| A6|
| 1| A1|null| null|
| 2| A2|null| null|
| 3| A3| 3| A3|
| 4| A4| 4| A4|
| 4| A4| 4| A4_1|
+----+-----+----+-----+
+----+-----+----+-----+
| id|value| id|value|
+----+-----+----+-----+
|null| null| 5| A5|
|null| null| 6| A6|
| 1| A1|null| null|
| 2| A2|null| null|
| 3| A3| 3| A3|
| 4| A4| 4| A4|
| 4| A4| 4| A4_1|
+----+-----+----+-----+
完全外接
+----+-----+----+-----+
| id|value| id|value|
+----+-----+----+-----+
|null| null| 5| A5|
|null| null| 6| A6|
| 1| A1|null| null|
| 2| A2|null| null|
| 3| A3| 3| A3|
| 4| A4| 4| A4|
| 4| A4| 4| A4_1|
+----+-----+----+-----+
+----+-----+----+-----+
| id|value| id|value|
+----+-----+----+-----+
|null| null| 5| A5|
|null| null| 6| A6|
| 1| A1|null| null|
| 2| A2|null| null|
| 3| A3| 3| A3|
| 4| A4| 4| A4|
| 4| A4| 4| A4_1|
+----+-----+----+-----+