我有一个带有DateTime
列Move_Date
的表。日期是正确的,但是时间部分被清零了,所以我尝试用正确的时间替换清零的列。我的查询如下:
update TableA
set Move_Date = replace(Move_Date, '00:00:00.000', '18:00:00.000')
当我运行此查询时,它成功成功,影响了1,632,380行,但是表中没有任何更改。我的查询是否有问题或这是一个错误?
最佳答案
假设您要设置时间部分:
UPDATE table1
SET Move_Date = CAST(CAST(Move_Date AS DATE) AS DATETIME) + CAST('18:00' AS DATETIME)
-- WHERE CAST(Move_Date AS TIME) = '00:00'
-- WHERE CAST(Move_Date AS TIME) <> '18:00'
关于sql - SQL查询成功执行但未进行任何更改,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58942060/