日期:2014-05-18 浏览次数:20540 次
select cast(left(convert(varchar,getdate(),23),8)+'01' as date) '本月的第一天', cast(dateadd(d,-1*(datepart(dw,getdate()))+1,getdate()) as date) '本星期的第一天' 本月的第一天 本星期的第一天 ---------- ---------- 2012-03-01 2012-03-25 (1 row(s) affected)
------解决方案--------------------
select dateadd(month, datediff(month,0,getdate()), 0) -- 本月第一天 select dateadd(week, datediff(week,-1,getdate()), -1) -- 本周第一天(星期日) select dateadd(week, datediff(day,0,getdate())/7, 0) -- 本周第一天(星期一) /* 2012-03-01 00:00:00.000 2012-03-25 00:00:00.000 2012-03-26 00:00:00.000 */