【发布时间】:2023-03-03 13:49:01
【问题描述】:
我正在实施使用左连接从两个数据帧中删除重复元素的解决方案。执行连接条件后,我必须检查右表的空列。
val llist = Seq(("bob", "2015-01-13", 4), ("alice", "2015-04-23",10))
val left = llist.toDF("name","date","duration")
val right = Seq(("alice", "2015-04-23",10),("bob", "2015-04-23", 23)).toDF("name","date","duration")
val df = left.join(right , left("name") === right("name") &&
left("date") === right("date") &&
left("duration").cast(StringType) === right("duration").cast(StringType)
,"left_outer").filter(right("duration").isNull)
但我无法过滤掉具有空值的整数列。我们如何在 join 后对整数进行 null 检查?
【问题讨论】:
-
为什么要把
duration(这是一个Int)转换成String? -
您能否在问题中添加输入数据帧和预期的输出数据帧。
标签: apache-spark apache-spark-sql spark-dataframe