use*_*772 3 sql reporting-services ssrs-2008
我正在使用SSRS 2008r2生成报告.在SQL查询中使用以下WHERE语句
WHERE (NonPMJobs.npmJobCreateDate >= @Created_Parameter) AND
(NonPMJobs.npmJobCreateDate <= @Created_Parameter2)
Run Code Online (Sandbox Code Playgroud)
我正在使用数据类型为的参数DateTime
.然后,用户从日历中选择日期.我想获得在日期1(@Created_Parameter
)和日期2(@Created_Parameter2
)INCLUSIVE 之间创建作业的结果.
但返回的结果不包括第二个日期(@Created_Parameter2
).如果我选择01/07/2013 - 05/07/2013
我得到01,02,03,04但没有05.如果我选择01/07/2013 - 06/07/2013我得到01,02,03,04,05.
我尝试过使用:
WHERE (NonPMJobs.npmJobCreateDate BETWEEN @Created_Parameter AND @Created_Parameter2)
Run Code Online (Sandbox Code Playgroud)
但得到相同的结果.
我在这里错过了什么,为什么不WHERE
包含声明?任何指针都将非常感激.
好吧,你需要考虑这个:DATETIME
这样的:05/07/2013
意味着7月5日(或5月7日 - 取决于你的地区)当天午夜开始时(00:00小时,可以这么说).
所以这并不包括在那一天发生的事件!
最好的解决方案是使用
WHERE (NonPMJobs.npmJobCreateDate >= @Created_Parameter) AND
(NonPMJobs.npmJobCreateDate < DATEADD(DAY, 1, @Created_Parameter2))
Run Code Online (Sandbox Code Playgroud)
基本上得到一切的量比较小下一根据一天@Created_Parameter2
.因此,对于7月5日,这将是7月6日之前的任何事情- 其中包括7月5日以来的所有活动.
归档时间: |
|
查看次数: |
4051 次 |
最近记录: |