我有一个 CSV 文件,其中包含以下格式的日期和时间戳值。例如:
Col1|col2
01JAN2019|01JAN2019:17:34:41
但是,当我在 create 语句中将 Col1 定义为 Date,将 Col2 定义为 Timestamp 时,Hive 表只是返回NULL
当我查询时。
CREATE EXTERNAL TABLE IF NOT EXISTS my_schema.my_table
(Col1 date,
Col2 timestamp)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ‘|’
STORED AS TEXTFILE
LOCATION 'my_path';
相反,如果我将数据类型简单地定义为string
然后就可以了。但这不是我想要的桌子的样子。
我希望表能够以正确的类型读取传入的数据。我怎样才能实现这个目标?是否可以使用以下命令定义传入数据的预期数据格式CREATE
声明本身?
有人可以帮忙吗?
从 Hive 1.2.0 开始,可以提供额外的 SerDe 属性"timestamp.formats"
。请参阅此 Jira 了解更多详细信息:HIVE-9298
ALTER TABLE timestamp_formats SET SERDEPROPERTIES ("timestamp.formats"="ddMMMyyyy:HH:mm:ss");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)