Oracle Konvertieren Sie TIMESTAMP mit Zeitzone auf DATE

8

Ich habe DB mit der Zeitzone +04:00 (Europe/Moscow) und muss eine Zeichenkette im Format YYYY-MM-DD"T"HH24:MI:SSTZH:TZM in den Datentyp DATE in Oracle 11g konvertieren.

Mit anderen Worten, ich habe eine Zeichenfolge 2013-11-08T10:11:31+02:00 und möchte sie in DATE Datentyp konvertieren (in der lokalen DB Zeitzone +04:00 (Europe/Moscow) ).

Für die Zeichenfolge 2013-11-08T10:11:31+02:00 sollte die gewünschte Umwandlung DATE Datentyp mit Datum 2013-11-08 12:11:31 (d. h. mit lokaler Zeitzonenumwandlung der Zeit in +04:00 (Europe/Moscow) ) zurückgeben. Die Zeitzone der Zeichenfolge kann unterschiedlich sein und +02:00 in der obigen Zeichenfolge ist nur ein Beispiel.

Ich habe das mit dem Datentyp TIMESTAMP versucht, aber keinen Erfolg mit der Zeitzonenumwandlung.

    
Nikita Petrov 20.11.2013, 07:27
quelle

2 Antworten

11

to_timestamp_tz() function mit at time zone clause kann verwendet werden, um Ihr String-Literal in einen Wert von timestamp with time zone data type zu konvertieren:

%Vor%

Ergebnis:

%Vor%

Und dann verwenden wir cast() function, um einen Wert von date data type zu erzeugen:

%Vor%

Erfahren Sie mehr über in der Zeitzone und to_timestamp_tz () Funktion.

    
Nick Krasnov 20.11.2013 08:16
quelle
5
%Vor%

Konvertiert einen Zeitstempel in GMT in Mitteleuropäische Zeit

    
quelle

Tags und Links