Wie schreibt bigint (timestamp in Millisekunden) Wert als timestamp in postgresql

Ich versuche zu speichern, in timestamp mit timezone Bereich mein Wert. Es ist in Millisekunden seit 1970.

select TO_CHAR(TO_TIMESTAMP(1401432881230), 'DD/MM/YYYY HH24:MI:SS.MS')

Erwartet 30/5/2014 11:29:42 10:54:41.230, aber bekommen
22/08/46379 23:27:02.000

  • select TO_CHAR(TO_TIMESTAMP(1401432881222 / 1000), 'DD/MM/YYYY HH24:MI:SS') || '.' || (1401432881222%1000) ist guter Stil Abfrage? Zurück 30/05/2014 06:54:41.222
  • to_timestamp bereits hält Millisekunden, das ist, warum es akzeptiert floating-point-unix-timestamps. Wenn Sie speichern möchten, eine echte Zeitstempel, einfach zu lagern, was es gibt. Wenn Sie formatieren möchten, verwenden Sie MS zur Anzeige von Millisekunden.
  • Aber in meinem Beispiel (select TO_CHAR(TO_TIMESTAMP(1401432881230), 'DD/MM/YYYY HH24:MI:SS.MS')) ich mache wie du gesagt hast.
InformationsquelleAutor Clyde | 2014-05-30
Schreibe einen Kommentar