Microssegundos no intervalo de tempo: pesquisa db2

quero microssegundos no intervalo de tempo, por isso estou a usar a pesquisa abaixo, mas não a obter os microssegundos

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

Obter: 2013-06-01 02:45:12 Resultado esperado:2013-06-01 02:45:12.145235

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

Author: happy, 2013-06-03

1 answers

Parece que usa uma função errada, ou seja timestamp_format o uso é:

A função TIMESTAMP_ format devolve um timestamp que se baseia interpretar o texto de entrada usando o formato indicado.

As funções recebem o texto e devolve a hora - a conversão é feita de acordo com o texto da especificação. Exemplo:

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

A conversão tst para string poderia ser feita assim:

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

Obter apenas microssegundos pode ser feito usando microssegundo função como esta:

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

Nota: O microssegundo devolve o número, não o texto.

 3
Author: Robert Lujo, 2013-06-05 21:22:35