我是Spark和Scala的新手,我编写Spark SQL代码。我在我的逻辑中应用交叉连接和交叉应用的情况。在这里,我将发布SQL查询,我必须将其转换为spark SQL。
select Table1.Column1,Table2.Column2,Table3.Column3
from Table1 CROSS JOIN Table2 CROSS APPLY Table3我需要上面的查询转换成Spark SQL中的SQLContext。请帮帮我。提前谢谢。
发布于 2016-11-23 19:56:11
首先在spark conf中设置以下属性
spark.sql.crossJoin.enabled=true然后dataFrame1.join(dataFrame2)将进行交叉/笛卡尔连接,
我们也可以使用下面的查询来做同样的事情
sqlContext.sql("select * from table1 CROSS JOIN table2 CROSS JOIN table3...")发布于 2018-11-20 18:49:41
设置Spark配置,
var sparkConf: SparkConf = null
sparkConf = new SparkConf()
.set("spark.sql.crossJoin.enabled", "true")使用crossJoin方法在spark 2.x中显式交叉连接
crossJoin(右: Dataset_):DataFrame
var df_new = df1.crossJoin(df2);注意:交叉连接是最耗时的连接之一,通常应该避免。
https://stackoverflow.com/questions/40763682
复制相似问题