使用介于两列日期之间的特定常量日期进行筛选-scala

使用介于两列日期之间的特定常量日期进行筛选-scala,scala,apache-spark,Scala,Apache Spark,我有一个DF,它必须与一个条件连接,该条件包括一个日期,该日期必须介于两列日期之间 DF.joinWith(DF1,"21-02-2012" between DF.StartDate and DF1.EndDate) 上面的代码是一个伪代码,如何在spark scala中编写相同的代码 使用文字: import org.apache.spark.sql.lit spark.conf.set("spark.sql.crossJoin.enabled", true) DF.join(DF1,

我有一个DF,它必须与一个条件连接,该条件包括一个日期,该日期必须介于两列日期之间

DF.joinWith(DF1,"21-02-2012" between DF.StartDate and DF1.EndDate)
  • 上面的代码是一个伪代码,如何在spark scala中编写相同的代码
使用文字:

import org.apache.spark.sql.lit

spark.conf.set("spark.sql.crossJoin.enabled", true)

DF.join(DF1, lit("21-02-2012").between(DF("StartDate"), DF1("EndDate")))

如果需要使用任何列值作为筛选条件,请像这样使用
df2.as('df2.as')。join(df1.as('df1),$“df1.Date”。between($“df2.StartDate”,$“df2.EndDate”)