Измените десятичную строку на временную метку в Impala - PullRequest
0 голосов
/ 16 ноября 2018

Как преобразовать строковый тип, такой как t1.updte_timestamp

2018-06-02-08.18.45.562742 
2018-05-26-09.18.16.594824

, в метку времени?ДОЛЖЕН РЕЗУЛЬТАТ В:

2018-06-02-08.18.45
2018-05-26-09.18.16

ETC

Значения были импортированы из Excel и находятся в типе STRING

Я пытался:

SELECT
 to_timestamp(cast (t1.updte_timestamp as string), 'yyyy-mm-dd hh:mm:ss') as updted_timestamp FROM OLD;

но приводит к NULL для всех значений

спасибо

1 Ответ

0 голосов
/ 16 ноября 2018

вы можете substr свою строку и применить to_timestamp как следует

select to_timestamp(substr('2018-06-02-08.18.45.562742', 1, 19) , 'yyyy-MM-dd-HH.mm.ss');

Убедитесь, что вы используете ММ для месяца и ЧЧ для часа в верхнем регистре

...