Supondo que os tipos de dados subjacentes sejam tipos de data/hora/datahora:
SELECT CONVERT(DATETIME, CONVERT(CHAR(8), CollectionDate, 112)
+ ' ' + CONVERT(CHAR(8), CollectionTime, 108))
FROM dbo.whatever;
Isso converterá
CollectionDate e CollectionTime para char sequências, combine-as e converta-as em um datetime . Os parâmetros para
CONVERT são data_type , expression e o style opcional (consulte sintaxe documentação
). O data e hora
style
valor 112 converte para um ISO yyyymmdd formato. O style valor 108 converte para hh:mi:ss formato. Evidentemente, ambos têm 8 caracteres e é por isso que o data_type é CHAR(8) para ambos. A sequência de caracteres combinada resultante está no formato
yyyymmdd hh:mi:ss e, em seguida, convertido para um datetime .