Hive - 在 hive sql 中将纪元时间(ms - 13 位)转换为时间戳直到毫秒

Hive - Convert epoch time (ms - 13 digit) to timestamp till milliseconds in hive sql

我需要在配置单元查询中从纪元时间戳中获取完成的时间戳。

For example 
epoch time      --- 1606407266850
timestamp value --- 2020-11-26 21:44:26 
expected value  --- 2020-11-26 21:44:26.850

我在配置单元中的方法:

Select timestamp(concat(from_unixtime(CAST(lastModifiedOn AS BIGINT),'yyyy-MM-dd HH:mm:ss'),".",CAST(lastModifiedOn AS BIGINT)%1000),'yyyy-MM-dd HH:mm:ss.SSS')
from db.table1

我的问题:我们是否有更好的方法来获取毫秒级的时间戳值?我们可以很容易地得到值直到秒。

select cast(lastModifiedOn/1000 as timestamp);

无法指定精度,但会保持时间戳达到最高精度