Neue und native Antwort im Jahr 2020
Wenn Sie in PostgreSQL nur die aktuelle Datums- und Uhrzeitangabe durch Aufrufen CURRENT_TIMESTAMP()
ohne Zeitzone und gebrochene Ziffern im Sekundenfeld, die nach dem Dezimalpunkt des Sekundenfelds stehen , anzeigen möchten ?
(Getestet mit PostgreSQL v12.4)
Dann benutze dies:
SELECT CURRENT_TIMESTAMP(0)::TIMESTAMP WITHOUT TIME ZONE;
Wenn Sie den Datentyp Ihrer Spalte als timestamp
(nicht als timestamptz
) definieren, können Sie den Zeitstempel ohne Zeitzone speichern. In diesem Fall müssen Sie ihn nicht hinzufügenTIMESTAMP WITHOUT TIME ZONE
So was:
CREATE TABLE foo (created timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP(0))
In der obigen Funktion wird 0 übergeben, um die gebrochenen Ziffern im Sekundenfeld zu entfernen.