如何在SAP Hana脚本化计算视图中将Unix时间戳(1541107867006)转换为所需的日期时间格式

时间:2018-11-05 12:46:35

标签: sql sap hana

经过深入研究,未能获得所需的解决方案,我将问题发布在这里。

问题:无法在SAP脚本计算视图中将时间戳1541107867006转换为所需的日期时间格式。

尝试了以下代码和SAP函数,但它们可用于其他格式,而不是专门用于此格式。

SELECT TO_TIMESTAMP (ADD_SECONDS( '1970-01-01 00:00:00', '1541107867006')) TIMESTAMP,
       TO_DATE (ADD_SECONDS( '1970-01-01 00:00:00', '1541107867006')) DATE,
       TO_TIME (ADD_SECONDS( '1970-01-01 00:00:00', '1541107867006')) TIME
from DUMMY

您能帮忙吗?非常感谢您的回应!

谢谢 Supriya

2 个答案:

答案 0 :(得分:1)

这对我有用。

TO_CHAR(ADD_SECONDS(TO_TIMESTAMP('1970-01-01 00:00:00'), cast('1541107867006' as bigint)/1000),'mm/dd/yyyy')

答案 1 :(得分:0)

常数'1541107867006'不是以秒为单位,而是以毫秒为单位。 试试

SELECT ADD_SECONDS(TO_TIMESTAMP('1970-01-01 00:00:00'), 
    cast('1541107867006' as bigint)/1000) as "Timestamp"
from DUMMY;

或者,因为某些转换是隐式的:

SELECT ADD_SECONDS('1970-01-01 00:00:00', 
    cast('1541107867006' as bigint)/1000) as "Timestamp"
from DUMMY;

立即将(数字)Unix时间戳记设为BIGINT会更容易:

SELECT ADD_SECONDS('1970-01-01 00:00:00', 1541107867006 / 1000) as "TimeStamp"
from DUMMY;