Umwandlung von string in datetimeoffset in SQL Server und Postgresql

In SQL-server habe ich eine Spalte, die speichert Daten in diesem format:

2017-06-22T00:43:15+0300

als strings.

Was ich versuche zu tun ist, werfen Sie diese Zeichenfolgen in die eigentliche datatimeoffset Daten um mit Ihnen den Termin.

So weit ich gefunden habe, mehrere Funktion für die Konvertierung von datetimeoffset in andere timestamp-Formate, aber keiner von diesen verweisen auf Zeichenfolgen.

https://docs.microsoft.com/en-us/sql/t-sql/data-types/datetimeoffset-transact-sql

Genau das gleiche problem stellt sich auf eine postgresql-Datenbank. Die besten habe ich es geschafft, zu erreichen, so weit ist Sie einfach abschneiden, die Zeitzone und konvertieren der rest der Zeichenkette in timestamp. Im Idealfall würde ich mag, nicht zu nutzen, wie eine verlustbehaftete transformation.

InformationsquelleAutor Jasmine | 2017-06-23



2 Replies
  1. 2

    Time Zone Offset im Sql-Server vertreten ist, wie dies

    [+|-] hh:mm:

    Ihre Daten ein Semikolon fehlt in der offset Teil

    DECLARE @stringtime VARCHAR(100)= '2017-06-22T00:43:15+0300'
    
    SET @stringtime = Reverse(Stuff(Reverse(@stringtime), 3, 0, ':'))
    
    SELECT Cast(@stringtime AS DATETIMEOFFSET(4)) 

    Ergebnis : 2017-06-22 00:43:15.0000 +03:00

    • Dieser funktioniert! Ich danke Ihnen sehr! Haben Sie eine Idee, wenn es etwas gleichwertiges für postgresql?
    • Sorry, ich weiß nicht Postgresql
    • Never mind! Trotzdem danke
  2. 0

    Postgres :

    to_timestamp('2017-06-22T00:43:15+0300', 'YYYY-MM-DD HH24:MI:SS')

    können Sie versuchen, mit, dass postgres-Funktion.

    • Ich möchte alle die Informationen aus dem Zeitstempel. Dies wird nur halten Sie Jahr, Monat und Tag. Eigentlich würde ich gerne bis zum Ende mit genau dem gleichen format, aber der Typ datetime, nicht als string
    • versuchen Sie, diese to_timestamp(‚2017-06-22T00:43:15+0300‘, ‚YYYY-MM-DD HH24:MI:SS‘), die postgresql-Funktion
    • Das ist, was ich Tat, war bis jetzt aber wieder verliere ich die Zeitzonen information

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.