4

に変換する DB2 関数はありTIMESTAMPますUTC millisecondsか?

4

2 に答える 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エポックからのミリ秒を意味すると仮定します。私はこれをテストしませんでした。db2 のドキュメントにはFractions of a secondしか記載されていないため、値を 10 倍に調整する必要がある場合があります。

于 2013-02-26T16:41:42.867 に答える