SSRS上周周一和周日

时间:2014-03-18 06:24:31

标签: reporting-services

我需要在周一和周日的最后一周,比如今天是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表达式完成它

2 个答案:

答案 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-星期六