Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark Spark SCALA-连接两个数据帧,其中一个数据帧中的连接值位于第二个数据帧中的两个字段之间_Apache Spark_Apache Spark Sql_Spark Streaming - Fatal编程技术网

Apache spark Spark SCALA-连接两个数据帧,其中一个数据帧中的连接值位于第二个数据帧中的两个字段之间

Apache spark Spark SCALA-连接两个数据帧,其中一个数据帧中的连接值位于第二个数据帧中的两个字段之间,apache-spark,apache-spark-sql,spark-streaming,Apache Spark,Apache Spark Sql,Spark Streaming,我有两个数据框(删除与问题无关的字段): 我现在想连接两个数据帧,其中: rawValue(df1)>=startong(df2)和您可以直接使用连接两个数据帧时的条件 让我举例说明。我创建了两个与您提到的相同的数据帧 val df1 = Seq((2L), (5L), (15L), (9L)).toDF("rawValue") //df1: org.apache.spark.sql.DataFrame = [rawValue: bigint] val df2 = Seq((3L, 5L),

我有两个数据框(删除与问题无关的字段):

我现在想连接两个数据帧,其中:


rawValue(df1)>=startong(df2)和您可以直接使用连接两个数据帧时的条件

让我举例说明。我创建了两个与您提到的相同的数据帧

val df1 = Seq((2L), (5L), (15L), (9L)).toDF("rawValue")
//df1: org.apache.spark.sql.DataFrame = [rawValue: bigint]

val df2 = Seq((3L, 5L), (10L, 16L), (9L, 9L)).toDF("startLong", "endLong")
//df2: org.apache.spark.sql.DataFrame = [startLong: bigint, endLong: bigint]
现在我想连接两个数据帧,其中rawValue(df1)>=startrong(df2)和
val df1 = Seq((2L), (5L), (15L), (9L)).toDF("rawValue")
//df1: org.apache.spark.sql.DataFrame = [rawValue: bigint]

val df2 = Seq((3L, 5L), (10L, 16L), (9L, 9L)).toDF("startLong", "endLong")
//df2: org.apache.spark.sql.DataFrame = [startLong: bigint, endLong: bigint]
df1.join(df2, df1("rawValue") >= df2("startLong") && df1("rawValue") <= df2("endLong")).show(false)
+--------+---------+-------+
|rawValue|startLong|endLong|
+--------+---------+-------+
|5       |3        |5      |
|15      |10       |16     |
|9       |9        |9      |
+--------+---------+-------+