Datums- und Uhrzeitfelder in MS SQL Server zusammenführen
Wenn Sie mit Daten arbeiten, die separate Datums- und Uhrzeitspalten enthalten, müssen Sie diese in einem einzigen Datums-/Uhrzeitfeld zusammenführen. In diesem Artikel erfahren Sie, wie Sie dies in MS SQL Server erreichen.
Verwenden Sie Nullauffüllung, um Felder zusammenzuführen
Wenn die Zeitkomponente der Spalte „Datum“ ganz Null ist und die Datumskomponente der Spalte „Zeit“ ganz Null ist (d. h. Basisdatum: 1. Januar 1900), können wir sie einfach addieren, um das richtige Ergebnis zu erhalten :
<code class="language-sql">SELECT Combined = MyDate + MyTime FROM MyTable</code>
Dies funktioniert, weil Datum und Uhrzeit als zwei 4-Byte-Ganzzahlen gespeichert werden, wobei die linken 4 Bytes das Datum und die rechten 4 Bytes die Uhrzeit darstellen. Indem wir sie addieren, kombinieren wir effektiv die Datums- und Uhrzeitkomponenten.
Felder mit SQL Server 2008-Typen zusammenführen
In SQL Server 2008 und höher wurden die Datentypen „Datum“ und „Uhrzeit“ eingeführt. Wenn Sie diese Typen verwenden, können Sie sie hinzufügen, indem Sie sie in datetime umwandeln:
<code class="language-sql">SELECT Combined = CAST(MyDate AS DATETIME) + CAST(MyTime AS DATETIME) FROM MyTable</code>
Genauigkeitsverlust verhindern
In SQL Server 2008 und höher kann das Hinzufügen von Datums- und Uhrzeitwerten zu einem Genauigkeitsverlust führen. Um dies zu verhindern, sollte einer der Werte mithilfe der CONVERT-Funktion zum Typ datetime2 heraufgestuft werden:
<code class="language-sql">SELECT Combined = CONVERT(datetime2, MyDate) + MyTime FROM MyTable</code>
Wenn Sie diese Methoden befolgen, können Sie Datums- und Zeitspalten unabhängig vom verwendeten Datentyp effektiv in einem einzigen Datums-/Uhrzeitfeld in MS SQL Server kombinieren.
Das obige ist der detaillierte Inhalt vonWie kann ich separate Datums- und Uhrzeitfelder in einem einzigen DateTime-Feld in MS SQL Server kombinieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!