在SQL Server 2008中,我有一个如下所示的用户表:
Userid
Username
UserBirthYear(int)
当用户注册页面时,她选择了她的出生年份。前程序员(当然!)让用户选择正确的年份,但插入数据库的值是DateTime.Now ...
现在我需要在coloumn UserBirthYear中从每个用户中减去并保存到数据库15年。有500,000用户。如何最好地实现这一目标?
提前致谢。
答案 0 :(得分:5)
update your_table
set UserBirthYear = UserBirthYear - 15
答案 1 :(得分:0)
如果插入的值是datetime,那么
试试这个select dateadd(year,-15,UserBirthYear)
例如:
select dateadd(year,-15,'06-27-2012')
答案为1997-06-27 00:00:00.000