Spark SQL-动态选择Spark SQL中不为空的列
我想选择包含非空值的列。假设我有一张桌子abc:Spark SQL-动态选择Spark SQL中不为空的列,sql,scala,apache-spark-sql,Sql,Scala,Apache Spark Sql,我想选择包含非空值的列。假设我有一张桌子abc: SnapshotDate CreationDate Country Region CloseDate Probability BookingAmount RevenueAmount SnapshotDate1 CreationDate1 CloseDate1 null null null null null 25 882000 0
SnapshotDate CreationDate Country Region CloseDate Probability BookingAmount RevenueAmount SnapshotDate1 CreationDate1 CloseDate1
null null null null null 25 882000 0 null null null
null null null null null 25 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
null null null null null 0 882000 0 null null null
然后我想只选择Probability、BookingAmount和RevenueAmount列,因为它们包含除null以外的一些值,而忽略只包含null值的列的其余部分
我试着做一些类似的事情-
从abc中选择*其中SnapshotDate!=null和CreationDate!=空和。。。。。
但这并没有帮助,因为它将查找每一行
注:-
是否有类似-sqlContext.sql(“当col1为null时选择case,然后不要选择它,否则选择它结束)x from abc”的内容
我正在使用spark 1.6.1
有办法吗
提前感谢您可以收集非空值的第一行检查,并获取列的名称,然后在上一个数据帧上调用select。不可复制的