Oracle Konvertieren, ZEITSTEMPEL mit Zeitzone, DATUM
Ich habe die DB mit timezone +04:00 (Europe/Moscow)
und brauchen, um zu konvertieren eine Zeichenfolge in ein format YYYY-MM-DD"T"HH24:MI:SSTZH:TZM
zu DATE
- Datentyp in Oracle 11g.
In anderen Worten, ich habe einen string 2013-11-08T10:11:31+02:00
und ich wollen, es zu konvertieren, um DATE
Daten Typ (in der lokalen DB Zeitzone +04:00 (Europe/Moscow)
).
String 2013-11-08T10:11:31+02:00
meine gewünschte transformation sollte zurück DATE
Datentyp Datum 2013-11-08 12:11:31
(d.h. mit den lokalen Zeitzone transformation von Zeit zu +04:00 (Europe/Moscow)
). Timezone-string kann unterschiedlich sein und +02:00
im string oben ist nur Beispiel.
Ich versucht, dies zu tun mit TIMESTAMP
Daten geben, aber keinen Erfolg mit Zeit-zone transformation.
- Außer für Situationen, die müssen 'local' Zeiten (ie, scheduling/Planung, vor allem für Zeitzonen mit Sommerzeit), ist es normalerweise am besten, zu speichern, absolute Zeitstempel in UTC gespeichert (und auf übersetzen-display/Bericht). Was sind diese Zeitstempel werden verwendet?
- Ich erhalten Datum in das timestamp-format von externen system und nicht wissen, warum externe system Sie verwendet. 🙁
- Fand meine Antwort.. aber im Falle dass, wenn Sie wollen, überprüfen Sie, dass timestamp ist wahr oder falsch, ich fand eine gute Website für diese. onlinetimestampconvert.com
Du musst angemeldet sein, um einen Kommentar abzugeben.
to_timestamp_tz()
Funktion mitat time zone
- Klausel kann verwendet werden, konvertieren Sie Ihre string-literal den Werttimestamp with time zone
Daten Typ:Ergebnis:
Dann verwenden wir
cast()
Funktion zu produzieren, ein Wert vondate
Daten Typ:Erfahren Sie mehr über bei der Zeitzone - Klausel und to_timestamp_tz() Funktion.
select CAST(to_timestamp_tz('2013-11-08T10:11:31+02:00', 'yyyy-mm-dd"T"hh24:mi:ss TZH:TZM') at time zone DBTIMEZONE AS DATE) from dual
wird der richtige Weg für michKonvertiert Zeitstempel in GMT Datum in mitteleuropäischer Zeit (MEZ
wenn Sie möchten, dass Ihre Zeitstempel mit Zeitzone zu konvertieren, um ein Datum in der sync mit "DATEPART" und verwenden Sie dann die folgenden:
cast-Zeit-Stempel-Datum :
cast(registrationmaster.Stamp5DateTime als date) >= '05-05-2018' UND
cast(registrationmaster.Stamp5DateTime als date) <= '05-05-2018'