hadoop - NULL 在将 Hive 查询结果写入文本文件时显示为 '\N'

标签 hadoop hive null hiveql

我正在尝试使用 Hive 的“写入目录”功能下载 Hive 查询的结果。对于某些列,我的查询返回了 NULL 值,但在生成的文件中我可以看到它被替换为 \N。 这是 Hive 的预期行为吗?我必须将生成的文件上传到 Bigquery 表。有什么方法可以为空值生成 NULL 而不是 \N 因为在文件中收到 \N 之后我必须执行中间处理(将 \N 替换为 NULL 或空字符串)。 请提出建议。

最佳答案

您可以使用 NULL DEFINED AS 定义如何序列化 NULL:

INSERT OVERWRITE DIRECTORY "/path/to/your/dir" 
ROW FORMAT DELIMITED FIELDS TERMINATED BY "," NULL DEFINED AS '' 
select ...

关于hadoop - NULL 在将 Hive 查询结果写入文本文件时显示为 '\N',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47902310/

相关文章:

string - 如何检查用户是否在 Go 中输入了空值?

java - hadoop流中的mapred.local.dir错误

java - 如何对 hadoop 中的所有键/值对进行一般化简

apache - apache kylin-枢轴功能不起作用

apache-spark - 如何在 spark sql 中使用 hive 钩子(Hook)

hadoop - Hive:对于通过 HiveServer2 具有超过 5000 行的表,select * from table 失败

hadoop - 使用不同集群的 HDFS 时的数据局部性

hadoop - 将数据上传/插入到 HDFS 时是否涉及映射器 reducer ?

检查指针是否为 NULL 会导致段错误

c++ - 测试指针的有效性 (C/C++)