我的hdfs商店的path/to/file
位置有以下csv文件。
1842,10/1/2017 0:02
7424,10/1/2017 4:06
我尝试使用以下命令创建表:
create external table t
(
number string,
reported_time timestamp
)
ROW FORMAT delimited fields terminated BY ','
LOCATION 'path/to/file';
我可以在impala查询编辑器中看到表reported_time
中的t
列始终为null。我想这是因为我的时间戳不是可接受的时间戳格式。
问题:
如何指定timestamp列应该是dd/mm/yyyy hh:min
格式,以便正确解析时间戳?
答案 0 :(得分:0)
您无法自定义时间戳(根据我的exp *),但您可以使用字符串数据类型创建表,然后您可以将字符串转换为时间戳,如下所示:
select number,
reported_time,
from_unixtime(unix_timestamp(reported_time),'dd/MM/yyyy HH:mm') as reported_time
from t;