Förutsatt att de underliggande datatyperna är datum/tid/datumtidtyper:
SELECT CONVERT(DATETIME, CONVERT(CHAR(8), CollectionDate, 112)
+ ' ' + CONVERT(CHAR(8), CollectionTime, 108))
FROM dbo.whatever;
Detta kommer att konvertera CollectionDate
och CollectionTime
för att markera sekvenser, kombinera dem och konvertera dem sedan till en datetime
.
Parametrarna för att CONVERT
är data_type
, expression
och den valfria style
(se syntax dokumentation
).
datum och tid style
värde 112
konverterar till en ISO yyyymmdd
formatera. style
värde 108
konverterar till hh:mi:ss
formatera. Uppenbarligen är båda 8 tecken långa, vilket är anledningen till data_type
är CHAR(8)
för båda.
Den resulterande kombinerade char-sekvensen är i formatet yyyymmdd hh:mi:ss
och konverteras sedan till en datetime
.