HiveQL中的时间戳转换出错

HiveQL中的时间戳转换出错,hive,hiveql,Hive,Hiveql,我使用以下查询将字符串转换为hiveql中的时间戳,但未按预期进行转换。 转换后的日期和时间存在差异 它完全忽略时间戳的毫秒部分。 有没有其他正确的方法 select RQSTSENTTM, from_unixtime(unix_timestamp(RQSTSENTTM,"dd-MMM-yy HH.mm.ss.SSSSSSSSS a") ,"yyyy-MM-dd HH.mm.ss.SSSSSSSSS a") from log limit 50; RQSTSENTTM

我使用以下查询将字符串转换为hiveql中的时间戳,但未按预期进行转换。
转换后的日期和时间存在差异
它完全忽略时间戳的毫秒部分。
有没有其他正确的方法

select RQSTSENTTM,
from_unixtime(unix_timestamp(RQSTSENTTM,"dd-MMM-yy HH.mm.ss.SSSSSSSSS a") 
,"yyyy-MM-dd  HH.mm.ss.SSSSSSSSS a")
from log limit 50;



     RQSTSENTTM                   After_conversion
05-JAN-16 05.29.17.449000000 PM 2016-01-10 10.12.37.000000000 AM
06-JAN-16 12.24.59.143000000 PM 2016-01-08 04.08.19.000000000 AM
06-JAN-16 12.24.59.215000000 PM 2016-01-09 00.08.19.000000000 AM
08-JAN-16 03.13.25.609000000 PM 2016-01-15 04.23.25.000000000 AM
08-JAN-16 03.13.25.732000000 PM 2016-01-16 14.33.25.000000000 PM
08-JAN-16 03.26.51.416000000 PM 2016-01-12 23.00.11.000000000 PM
08-JAN-16 03.26.51.462000000 PM 2016-01-13 11.46.51.000000000 AM
08-JAN-16 03.33.49.984000000 PM 2016-01-19 12.53.49.000000000 PM
08-JAN-16 03.33.50.046000000 PM 2016-01-08 16.20.30.000000000 PM
08-JAN-16 03.37.21.740000000 PM 2016-01-16 17.10.41.000000000 PM
08-JAN-16 03.37.21.796000000 PM 2016-01-17 08.44.01.000000000 AM
08-JAN-16 03.37.58.752000000 PM 2016-01-16 20.31.18.000000000 PM
08-JAN-16 03.37.58.820000000 PM 2016-01-17 15.24.38.000000000 PM
08-JAN-16 03.39.25.877000000 PM 2016-01-18 07.16.05.000000000 AM
08-JAN-16 03.39.25.954000000 PM 2016-01-19 04.39.25.000000000 AM

这似乎是hiveql,而不是hql。你看到这个问题了吗@我在链接中看到了这个问题。问题出在字符串的毫秒部分,那里没有毫秒。无论如何,尝试过它,但没有得到null。感谢您删除对hql的引用。真糊涂!