我有一个运行嵌入式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)
函数,但有关如何处理这个参数的任何建议吗?
答案 0 :(得分:1)
创建一个新的整数报表参数@DayOfWeek。它的可用值是:
'周日' = 1
'星期一' = 2
'周二' = 3
'周三' = 4
'周四' = 5
'周五' = 6
'周六' = 7
那么你的where子句就是:
And DM.FromDateTime Between @startDate AND @endDate
AND DATEPART(WEEKDAY, DM.FromDateTime) = @DayOfWeek