我在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))
到目前为止,我总是得到这个错误
从字符串转换日期和/或时间时转换失败。
日期和数据的数据类型发布的时间也是日期时间。
由于
答案 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来获得完整的小时。