Wie @karlgold, kommentierte, diese Runden auf volle Sekunden und Bruchteile werden nicht gespeichert, wenn Sie halten mit diesem Datentyp.
Verwenden date_trunc() für mehr spezifischen Bedürfnisse.
SELECT date_trunc('second', now()::timestamp);
Diese schneidet (Blätter Sekunden unverändert). Weitere Manipulationen können wieder einzuführen Sekundenbruchteile.
Natürlich können Sie beides kombinieren - dieses mal entfernen der zweite Teil:
SELECT date_trunc('minute', now())::timestamp(0);
Aber bewusst sein, dass die Zuordnung dieses Wertes zu einer Spalte oder Variablen mit einem anderen Datentyp Ergebnis in einem anderen Zuordnung cast.
Werfe es
timestamp(0)
odertimestamptz(0)
zu entfernen Sekundenbruchteile:Wie @karlgold, kommentierte, diese Runden auf volle Sekunden und Bruchteile werden nicht gespeichert, wenn Sie halten mit diesem Datentyp.
Verwenden
date_trunc()
für mehr spezifischen Bedürfnisse.Diese schneidet (Blätter Sekunden unverändert). Weitere Manipulationen können wieder einzuführen Sekundenbruchteile.
Natürlich können Sie beides kombinieren - dieses mal entfernen der zweite Teil:
Aber bewusst sein, dass die Zuordnung dieses Wertes zu einer Spalte oder Variablen mit einem anderen Datentyp Ergebnis in einem anderen Zuordnung cast.
InformationsquelleAutor der Antwort Erwin Brandstetter