Supponendo che i tipi di dati sottostanti siano data/ora/data/ora:
SELECT CONVERT(DATETIME, CONVERT(CHAR(8), CollectionDate, 112)
+ ' ' + CONVERT(CHAR(8), CollectionTime, 108))
FROM dbo.whatever;
Questo convertirà CollectionDate e CollectionTime per creare sequenze di caratteri, combinarle e quindi convertirle in un datetime .
I parametri da CONVERT sono data_type , expression e lo style opzionale (vedi sintassi documentazione
).
Il data e ora style
valore 112 converte in un yyyymmdd ISO formato. Lo style valore 108 converte in hh:mi:ss formato. Evidentemente entrambi sono lunghi 8 caratteri ed è per questo che il data_type è CHAR(8) per entrambi.
La sequenza di caratteri combinata risultante è nel formato yyyymmdd hh:mi:ss e quindi convertito in un datetime .