SSRS参数,用于选择日期范围内的星期几

时间:2015-03-05 22:46:08

标签: sql-server-2008 tsql reporting-services parameters ssrs-2008

我有一个运行嵌入式SQL的报告,它使用简单的@startDate和@endDate参数以及WHERE子句中的变量:

And DM.FromDateTime Between @startDate AND @endDate

我想要完成的是拥有一个仅返回用户选择的星期几的附加参数。

例如,如果用户选择2015年3月1日至2015年3月31日作为其日期范围并选择“星期一”,则报告将仅填充3/2,3 / 9,3 / 16的数据,3/23和3月30日。

我知道SQL有datepart (dw)函数,但有关如何处理这个参数的任何建议吗?

1 个答案:

答案 0 :(得分:1)

创建一个新的整数报表参数@DayOfWeek。它的可用值是:
'周日' = 1
'星期一' = 2
'周二' = 3
'周三' = 4
'周四' = 5
'周五' = 6
'周六' = 7

那么你的where子句就是:

And DM.FromDateTime Between @startDate AND @endDate
AND DATEPART(WEEKDAY, DM.FromDateTime) = @DayOfWeek