3

我想要时间戳中的微秒,所以我使用下面的查询但没有得到微秒

select TIMESTAMP_FORMAT(CURRENT_TIMESTAMP,
       'YYYY-MM-DD HH:MM:SS.NNNNNN') FROM SYSIBM.SYSDUMMY1

获得:2013-06-01 02:45:12 预期输出:2013-06-01 02:45:12.145235

参考:http ://pic.dhe.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z9.doc.sqlref%2Fsrc%2Ftpc%2Fdb2z_bif_timestampformat.htm

4

2 回答 2

4

看来你使用了错误的功能,即timestamp_format用法是:

TIMESTAMP_FORMAT 函数返回基于使用指定格式解释输入字符串的时间戳。

函数接收字符串并返回时间戳- 转换按照规范字符串完成。例子:

VALUES (TIMESTAMP_FORMAT('1999-12-31 23:59:59', 'YYYY-MM-DD HH24:MI:SS'))
--------------------------
1999-12-31-23.59.59.000000

可以像这样将 tst 转换为字符串:

VALUES cast(current_timestamp as varchar(40))
----------------------------------------
2013-06-05-23.19.15.125000

通过使用这样的微秒函数可以只获得微秒:

VALUES( microsecond(current_timestamp), current_timestamp)
----------- --------------------------
     468000 2013-06-05-23.21.10.468000

注意:微秒返回数字,而不是字符串。

于 2013-06-05T21:22:35.143 回答
1

使用这段代码将字符串日期时间转换为时间戳格式

 TIMESTAMP_FORMAT('2017-03-01 14:26:02.646171', 'YYYY-MM-DD HH24:MI:SS.NNNNNN')
于 2019-01-10T07:44:34.340 回答