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 から string への変換は、次のように行うことができます。

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 に答える