1

我想从目标表中过滤日期大于源表的 min(date) 的记录(两个表中都有共同的 id)

val cm_record_rdd=hiveContext.sql("select t1.* from target t1 left outer join source t2 on t1.id=t2.id")

val min_date_rdd=hiveContext.sql("select min(date) as min_date from source");

val src_rdd = hiveContext.sql("select * from source");

如何使用 target.date >= source.min_date 过滤 cm_record 的记录?

我尝试了以下步骤:

src_rdd.filter(cm_record_rdd("start_dt") >= min(src_rdd("date")))
src_rdd.filter(cm_record_rdd("start_dt") >= min_date_rdd("min_date"))

没有任何效果

解决方案:

val min_date=hiveContext.sql("select min(date) as min_date from source").collect.head.get(0)
src_rdd.filter(delta_count("start_dt") >= min_date)
4

0 回答 0