Můžete jednoduše přidat dva.
- pokud
Time partvašehoDatesloupec je vždy nula - a
Date partvašehoTimesloupec je také vždy nula (základní datum:1. ledna 1900)
Jejich přidáním se vrátí správný výsledek.
SELECT Combined = MyDate + MyTime FROM MyTable
Odůvodnění (chvála ErikE/dnelanovi)
Funguje to takto, protože datum je uloženo jako dvě 4bajtová
Integerspřičemž levé 4 bajty jsoudatea pravé 4 bajty jsoutime. Je to jako dělat$0001 0000 + $0000 0001 = $0001 0001
Úpravy týkající se nových typů SQL Server 2008
Date a Time jsou typy představené v SQL Server 2008 . Pokud trváte na přidání, můžete použít Combined = CAST(MyDate AS DATETIME) + CAST(MyTime AS DATETIME)
Úprava 2 týkající se ztráty přesnosti v SQL Server 2008 a novějších (chvála Martinu Smithovi)
Podívejte se na Jak zkombinovat datum a čas s datetime2 v SQL Server? abyste zabránili ztrátě přesnosti pomocí SQL Server 2008 a vyšší.