我们正在创建一个演示数据库。所以他们需要我将包含所有日期的列更改为特定日期。
只替换月份和日期,并保持年份不变。
例如:2012 年 3 月 12 日、1990 年 6 月 19 日
解决方案:01/01/2012,01/01/1990
他们想把月份和日期设为:01/01
我的查询如下:
update Tablename set column = REPLACE(column, select substring(column,1,5) from Tablename ,'01/01') ;
但我收到如下所述的错误:
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'select'.
Msg 102, Level 15, State 1, Line 1
Incorrect syntax near '01/01'.
如有任何帮助/建议,我们将不胜感激。
最佳答案
不要通过字符串操作更改日期。它肯定会打破道路,而且速度更慢。
UPDATE TableName
SET [column] = DATEADD(year,DATEDIFF(year,0,[column]),0)
关于sql - 替换日期的某一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17455328/