过滤表列并路由到不同的表(如果它为null)

问题描述 投票:0回答:1

我对SQL知之甚少,但我仍然想问这个论坛。

我的工作是处理具有空值的记录。我的意思是我们有自然键(假设有4列),如果列中的任何一列获得NULL值,那么应将其路由到另一个表,以便可以将其报告给客户端。

AFAIK SQL只提供一个输出,不能拆分。我们有什么方法可以在SQL / spark SQL处理这个问题吗?我需要使用spark执行这项工作。

流程是:

  1. 第一个数据是sqooped并保存在hive表中
  2. 我需要获取此数据并检查空值。
  3. 将它存储在下一级表中
sql apache-spark-sql
1个回答
0
投票

虽然你不能一次性完成,但你可以通过上述步骤来完成。

在Hive中创建表后,您可以使用PySpark,

#Set all the imports and enable Hive support for the session
#Dataframe to hold rows where either of 4 columns is null
df=spark.sql("select * from tblName where col1 is null or col2 is null or col3 is null or col4 is null")
#Write the resulting dataframe to a Hive table
df.saveAsTable('tableName') #Use other arguments in saveAsTable as required
© www.soinside.com 2019 - 2024. All rights reserved.