日期:2014-05-17  浏览次数:20818 次

sql 按条件返回不同结果
各位高手,我现在有一个表,表里面有日期列,现在我要返回结果如下,
1.当这个日期是周一到周五,直接返回日期
2.当日期为周六时,日期减一天返回
3.当日期为周日是,日期减两天返回,
怎么写啊?谢谢了

------解决方案--------------------
SELECT CASE WHEN DATEPART(weekday,GETDATE()) BETWEEN 2 AND 6 THEN GETDATE() WHEN DATEPART(weekday,GETDATE()) =7 THEN DATEADD(dd,-1,GETDATE())
WHEN DATEPART(weekday,GETDATE()) =1 THEN DATEADD(dd,-2,GETDATE()) END