我需要在周一和周日的最后一周,比如今天是3月18日因此SSRS表达 应该回来 3月10日 - 周一 3月16日 - 周日
我能够使用SQL
获得它select dateadd(d,(2-datepart(dw, getdate())), dateadd(ww,-1,getdate()))
select dateadd(d,(1-datepart(dw, getdate())), getdate())
不确定如何通过SSRS表达式完成它
答案 0 :(得分:30)
SSRS VBA允许对Sql进行日期操作的非常相似的表达式,主要区别在于使用DateInterval枚举。在不检查表达式的情况下,它将转换为SSRS VBA,如下所示:
上周一:
=DateAdd(DateInterval.Day, 2-WeekDay(Today), DateAdd(DateInterval.Day, -7, Today()))
上周日:
=DateAdd(DateInterval.Day, 1-WeekDay(Today), Today())
答案 1 :(得分:0)
要从上周获取星期日: (注意:上周日与上周日不同)。
=DateAdd(DateInterval.Day, 1-WeekDay(Today), DateAdd(DateInterval.Day, -7, Today))
要从上周获得星期六:
=DateAdd(DateInterval.Day, 7-WeekDay(Today), DateAdd(DateInterval.Day, -7, Today))
,其“工作日”值如下:
1-星期日
2-星期一
3-星期二
4-星期三
5-星期四
6-星期五
7-星期六