/ / So konvertieren Sie Datums- / Uhrzeitwerte in SAS in TSQL - SQL-Server, Tsql, Datum und Uhrzeit

So konvertieren Sie Datum-Uhrzeit-Werte in SAS in TSQL - sql-server, tsql, datetime, sas

Ich lese einige Datums- / Uhrzeitwerte von SASServer und die Art und Weise, wie SAS-Datumswerte gespeichert werden, in numerischen Variablen. Datumswerte stellen die Anzahl von Tagen seit dem 1. Januar 1960 dar. Zeitwerte repräsentieren die Anzahl von Sekunden seit Mitternacht. Datetime-Werte stellen die Anzahl von Sekunden seit dem 1. Januar 1960 dar. Ich kann die Datumswerte lesen und bekomme die korrekte Konvertierung, aber mein Problem ist, dass ich die Zeitwerte nicht konvertieren kann Werte

DATEADD(DAY, [SC_ADMIT_DT],"19600101")AS [SC_ADMIT_DT]

das wird mir 2009-12-15 geben und das ist gut. Aber ich habe eine andere Spalte ADMT_TIME, der Zeitwert, der in der SAS gespeichert ist, ist wie folgt: 29520 und ich möchte es konvertieren, um den richtigen Datumszeitwert anzuzeigen. Ich bin nicht einmal sicher, ob es sich um Datumsstempel oder nur um Zeit handelt. Vielen Dank

Antworten:

3 für die Antwort № 1

Du sagtest

Zeitwerte stehen für die Anzahl der Sekunden seit Mitternacht

Und da 29520/3600 8,2 Stunden ist, d. H. 8:12 Uhr, scheint das richtig. Warum also nicht einfach diese Sekunden hinzufügen?

DATEADD(SECOND, [ADMT_TIME], DATEADD(DAY, [SC_ADMIT_DT], "19600101")) AS [SC_ADMIT_DT]