仅将日期时间转换为日期和时间

时间:2016-03-17 19:46:40

标签: sql-server date datetime

我在SQL Server中连接2列,它们的数据类型都为datetime

UPDATE dbo.Feban_stg 
SET [Date & Time Posted] = CONCAT(CONVERT(VARCHAR(10), [Date Posted], 110), RIGHT(CONVERT(varchar, [Time Posted], 100), 7))

到目前为止,我总是得到这个错误

  

从字符串转换日期和/或时间时转换失败。

日期和数据的数据类型发布的时间也是日期时间。

由于

1 个答案:

答案 0 :(得分:2)

问题是日期部分和时间部分之间没有空格。 CANCAT只是增加了字符串。试试这个:

UPDATE dbo.Feban_stg 
SET [Date & Time Posted] = CONCAT(CONVERT(VARCHAR(10), [Date Posted], 110), ' ', RIGHT(CONVERT(varchar, [Time Posted], 100), 8))

此外,你需要在RIGHT函数中使用8而不是7来获得完整的小时。