5
1348560343598
のようなUNIXのタイムスタンプの値をH2 Timestamp
に変換するにはどうすればよいですか?unixタイムスタンプをH2タイムスタンプに変換する
私のテーブルの1つにBIGINT(19)
カラムにこれらのunixタイムスタンプが入っていて、それをタイプTIMESTAMP
のカラムに変換する必要があります。
1348560343598
のようなUNIXのタイムスタンプの値をH2 Timestamp
に変換するにはどうすればよいですか?unixタイムスタンプをH2タイムスタンプに変換する
私のテーブルの1つにBIGINT(19)
カラムにこれらのunixタイムスタンプが入っていて、それをタイプTIMESTAMP
のカラムに変換する必要があります。
[OK]を、次の式を使用して動作します:
select DATEADD('SECOND', 1348560343, DATE '1970-01-01')
ちょうど'MILLISECOND'
が動作しない、あなたがNumeric value out of range
を取得します使用して1000でタイムスタンプを分割することを忘れないでください。
ミリ秒は機能しません:はい、私は同じ問題に遭遇しました。実際には、内部で使用される 'Calendar.add(int field、int amount)'の制限です。 H2は、タイムゾーンの問題のためにほとんどの日付/時刻機能で 'java.util.Calendar'を使用しませんが、この場合でもまだ使用されています。 –
これは実際にはJVM時間にカバレッジします(したがって、データベースにタイムスタンプを格納するためにはより意味のあるUTCにすることはできません)。 – marios