我正在尝试将下面的字符串转换为时间戳。但是我不知道如何处理最后的问题 milisecond part
字符串:
2020-06-30T23:57:48.000-0400
下面是工作。不管怎样,它都会丢失毫秒的信息。
hive> select from_unixtime(unix_timestamp("2020-06-30T23:57:48.000-0400", "yyyy-MM-dd'T'HH:mm:ss.SSS'-'SSS"), "yyyy-MM-dd'T'HH:mm:ss.SSS'-'SSSS");
OK
2020-06-30T23:57:48.000-0000
期望值
2020-06-30T23:57:48.000-0400
更新
即使这样也不行
查询
hive> select date_format("2020-01-23 23:59:54.0000400", "yyyy-MM-dd HH:mm:ss.SSSSSSS");
输出
2020-01-23 23:59:54.0000000
1条答案
按热度按时间ruyhziif1#
试试这个-
选择concat(从unixtime(unix\u timestamp('2020-01-23 23:59:54.0000400','yyyy-mm-dd hh:mm:ss')),''','拆分('2020-01-23 23:59:54.0000400','[.]')[1]);
我希望这对你有帮助。