读书人

日期操作有关问题在线结分

发布时间: 2012-03-20 14:01:11 作者: rapoo

日期操作问题,在线结分
select datediff(day,7,datediff(day,(datepart(weekday,GetDate())-@@datefirst+7)%7,GetDate()))
这句话得出的是39317这样一个数,能不能把它换算为日期格式
说得简单点就是datediff(day,7,2007-09-04)得出的是一个以天为单位的数字
有没有什么其它的方法,就是把一个日期减去一个数字(单位为天)后得出另一个日期
如2007-09-04减7后得出一个2007-08-28


[解决办法]
select dateadd(day,-7, '2007-09-04 ')
[解决办法]
select Convert(datetime,datediff(day,7,datediff(day,(datepart(weekday,
GetDate())-@@datefirst+7)%7,GetDate())) )
[解决办法]
select dateadd(day,-7, '2007-09-04 ')
[解决办法]
select dateadd(day,-7, '2007-09-04 ')

/*

------------------------------------------------------
2007-08-28 00:00:00.000

(所影响的行数为 1 行)
*/

读书人网 >SQL Server

热点推荐