Sql 汉克斯。这不是你在问的吗”。我想把两个表连接起来,这样表1中的每一条记录都与表2上的第一个较低的时间戳连接起来。”是的,所以142.13应该与141.16连接起来,141.16刚好低于142.13。c2的第一个输出不正确。这里应该是141.16。谢谢。你不
Sql 汉克斯。这不是你在问的吗”。我想把两个表连接起来,这样表1中的每一条记录都与表2上的第一个较低的时间戳连接起来。”是的,所以142.13应该与141.16连接起来,141.16刚好低于142.13。c2的第一个输出不正确。这里应该是141.16。谢谢。你不,sql,apache-spark-sql,Sql,Apache Spark Sql,汉克斯。这不是你在问的吗”。我想把两个表连接起来,这样表1中的每一条记录都与表2上的第一个较低的时间戳连接起来。”是的,所以142.13应该与141.16连接起来,141.16刚好低于142.13。c2的第一个输出不正确。这里应该是141.16。谢谢。你不是在问这个问题吗”。我想把两个表连接起来,这样表1中的每一条记录都会与表2上第一个较低的时间戳连接起来。”是的,所以142.13应该与141.16连接起来,141.16刚好低于142.13。 For e.g. Table1 Tab
汉克斯。这不是你在问的吗”。我想把两个表连接起来,这样表1中的每一条记录都与表2上的第一个较低的时间戳连接起来。”是的,所以142.13应该与141.16连接起来,141.16刚好低于142.13。c2的第一个输出不正确。这里应该是141.16。谢谢。你不是在问这个问题吗”。我想把两个表连接起来,这样表1中的每一条记录都会与表2上第一个较低的时间戳连接起来。”是的,所以142.13应该与141.16连接起来,141.16刚好低于142.13。
For e.g.
Table1 Table2
142.13 141.16
157.34 145.45
168.45 155.85
170.23 166.76
168.44
Joined Table should be:
142.13,141.16
157.34,155.85
168.45,166.76
170.23,168.44
with t1 as (
select 142.13 v from dual union all
select 157.34 v from dual union all
select 168.45 v from dual union all
select 170.23 v from dual
),
t2 as (
select 141.16 v from dual union all
select 145.45 v from dual union all
select 155.85 v from dual union all
select 166.76 v from dual union all
select 168.44 v from dual
)
select v, ( select max(v) from t2 where t2.v <= t1.v )
from t1;
V (SELECTMAX(V)FROMT2WHERET2.V<=T1.V)
---------- -----------------------------------
142.13 141.16
157.34 155.85
168.45 168.44
170.23 168.44
4 rows selected.
select t1.v, ( select max(t2.v) from table2 t2 where t2.v <= t1.v ) from table1 t1
select t1.v, max(t2.v)
from table1 t1
join table2 t2 on t2.v <= t1.v
group by t1.v
order by t1.v;
val t1 = spark.sparkContext.parallelize(Seq(142.13, 157.34, 168.45, 170.23)).toDF("c1")
val t2 = spark.sparkContext.parallelize(Seq(141.16,145.45,155.85,166.76,168.44)).toDF("c2")
val t11 = t1.withColumn("id", monotonically_increasing_id())
val t22 = t2.withColumn("id", monotonically_increasing_id())
val res = t11.join(t22, t11("id") + 1 === t22("id") ).drop("id")
+------+------+
| c1| c2|
+------+------+
|142.13|145.45|
|168.45|166.76|
|157.34|155.85|
|170.23|168.44|
+------+------+