我有一个包含时间戳的csv文件,如:
2018-01-01T12:13:14.000+01:00
我想将它们存储为Hive中的时间戳,是否可以直接执行它,或者我应该预处理csv文件以便更好地使用#34;时间戳?
以下查询无法正确存储它们:
CREATE EXTERNAL TABLE IF NOT EXISTS test_timestamps(
timestamp TIMESTAMP,
name STRING)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE
location '/test_timestamps/';
谢谢
答案 0 :(得分:0)
如果您想保留格式,请将其存储为timestamp STRING
,并在从表中选择时使用DATE functions将其转换为所需格式。
注意:所有Hive关键字都不区分大小写,您可能希望为列使用正确的名称而不是“timestamp”。
select date_format(timestamp, "yyyy-MM-dd'T'hh:mm:ss.SSS'Z'"),name from test_timestamps;