是否有要转换TIMESTAMP
为的 DB2 函数UTC milliseconds
?
问问题
12308 次
2 回答
2
假设您要获取自纪元 (1970-01-01 00:00:00) 以来的毫秒数,则没有内置函数可以执行此操作。
然而,创建一个 UDF 是微不足道的,它可以:
CREATE OR REPLACE FUNCTION utcmillis (in db2ts timestamp)
returns bigint
language sql
deterministic
no external action
return (
bigint((days(db2ts - current timezone) - days('1970-01-01-00.00.00.000000')) * 86400 + midnight_seconds(db2ts - current timezone))*1000 + microsecond(db2ts)/1000
);
于 2013-02-26T22:06:55.110 回答
0
您可以使用TIMESTAMPDIFF。像这样的东西:
TIMESTAMPDIFF(1,CHAR(timestampField -
TIMESTAMP('1970-01-01-00.00.00.000000')))
假设您的意思是自 unix 纪元以来的毫秒数。我没有对此进行测试,您可能必须将值调整 10 倍,因为 db2 文档只说Fractions of a second。
于 2013-02-26T16:41:42.867 回答