Swe*_*tha 4 sql arrays scala apache-spark apache-spark-sql
我的数据如下:
[null,223433,WrappedArray(),null,460036382,0,home,home,home]
Run Code Online (Sandbox Code Playgroud)
如何在spark sql中查询col3是否为空?我试图爆炸但是当我这样做时,空数组行正在消失.有人可以建议我这样做的方法.
我试过了 :
val homeSet = result.withColumn("subscriptionProvider", explode($"subscriptionProvider"))
Run Code Online (Sandbox Code Playgroud)
subscriptionProvider(WrappedArray())具有值数组的列在哪里,但某些数组可以为空.我需要使用null值获取subscriptionProvider,而且subscriptionProvider数组具有"Comcast"
小智 7
尝试:
import org.apache.spark.sql.functions._
val tmp = df.withColumn("subscriptionProvider",
when(size($"subscriptionProvider") !== 0, $"subscriptionProvider").otherwise(array(lit(null).cast("string"))))
tmp.withColumn("subscriptionProvider", explode($"subscriptionProvider"))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8555 次 |
| 最近记录: |