typecasting一个dataframe为空字段返回“null”

sdnqo3pr  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(365)

我将原始数据加载到配置单元表中,默认情况下所有列都是字符串。现在我需要更改配置单元表的数据类型以导出到sqlserver。当类型转换配置单元列时,空字段返回“null”,尝试将配置单元表加载到dataframe并类型转换列,但dataframe也会为空字段返回“null”。sqlserver无法识别这些值。
当我从配置单元或Dataframe中获取数据时,有人能提出一个解决方案来避免显示中的“null”值吗。

yyhrrdl8

yyhrrdl81#

如果您只想更改数据类型,因为您想在导出的数据中使用该特定格式,请考虑根据您的要求使用写入目录,然后使用sqoop/任何其他工具导出。

INSERT OVERWRITE DIRECTORY '<HDFS path>'
Row format delimited
Fields terminated by '<delimiter>'
SELECT
a,
b
From
table_name
Where <condition>;

导出时,如果有空值,请考虑在sqoop命令中使用这些参数

--null-string "\\N" --null-non-string "\\N"

希望这对你有帮助

相关问题