Zeichenfolgendarstellung von a timestamp (= timestamp without time zone) hängt von Ihren Gebietsschemaeinstellungen ab. Um Zweideutigkeiten zu vermeiden, die zu Datenfehlern führen oder Postgres eine Ausnahme ausspuckt, haben Sie daher zwei Möglichkeiten:
1.) Verwenden ISO 8601-Formatdas funktioniert genauso mit irgendein Gebietsschema bzw DateStyle Einstellung:
'2013-08-20 14:52:49'
Je nach Anwendungsfall müssen Sie das Zeichenfolgenliteral möglicherweise explizit umwandeln, wenn der Datentyp nicht aus dem Kontext abgeleitet werden kann:
'2013-08-20 14:52:49'::timestamp
2.) Konvertieren Sie die Zeichenfolge in timestamp verwenden to_timestamp() mit passendem Schablonenmuster:
Dies kehrt zurück timestamptz, wobei die aktuelle Zeitzoneneinstellung angenommen wird. Typischerweise (wie bei einer Zuweisung) wird der Typ entsprechend erzwungen. Zum timestamp, bedeutet dies, dass der Zeitversatz abgeschnitten wird und Sie den erwarteten Wert erhalten. Wenn der Zieltyp nicht aus dem Kontext abgeleitet werden kann, müssen Sie möglicherweise explizit umwandeln:
Da dies einfach den Zeitversatz entfernt, ergibt sich der erwartete Wert. Oder verwenden Sie die AT TIME ZONE Konstrukt mit einer Zeitzone Ihrer Wahl:
to_timestamp('20/8/2013 14:52:49', 'DD/MM/YYYY hh24:mi:ss') AT TIME ZONE 'UTC'
Während die Zielzeitzone mit Ihrer aktuellen übereinstimmt timezone Einstellung erfolgt keine Transformation. Andernfalls wird der resultierende Zeitstempel entsprechend transponiert. Weiterlesen:
Zeitzonen in Rails und PostgreSQL komplett ignorieren
Georgios Syngouroglou
Um einen String in einen Zeitstempel ohne Zeitzone umzuwandeln, verwende ich für Postgresql das obige
SELECT to_timestamp('23-11-1986 09:30:00', 'DD-MM-YYYY hh24:mi:ss')::timestamp without time zone;
hey hallo, vielen dank kumpel. Ich habe gerade meine letzten 5 Stunden für die Suche hier verloren …..
– cjahangir
3. März 2019 um 20:39 Uhr
11768200cookie-checkSo konvertieren Sie “String” in “Zeitstempel ohne Zeitzone”yes
Haben Sie die Funktion to_timestamp() überprüft? postgresql.org/docs/9.1/static/functions-formatting.html
– Arpit Agrawal
20. September 2013 um 11:18 Uhr