您好我有一个查询,我的where子句省略了日期1/1/2017和3/1/2017。但是,我想将此查询用于SSRS报告,因此它只是@begdate和@enddate而不是这些硬编码字段。有没有办法只省略这两个日期?
where
((Scheduled_Time >= '01/01/2014 00:00:00' and Scheduled_Time <= '12/31/2016 23:59:59' ) --filter out 1/1/2017
or (Scheduled_Time >= '01/02/2017 00:00:00' and Scheduled_Time <= '02/28/2017 23:59:59') --filter out 3/1/2017
or (Scheduled_Time >= '03/2/2017 00:00:00' and Scheduled_Time <= '06/30/2017 23:59:59') )
答案 0 :(得分:1)
只需删除这些日期,然后使用您的参数......
where cast(Scheduled_Time as date) <> '20170101'
and cast(Scheduled_Time as date) <> '20170301'
and Scheduled_Time >= @begdate
and Scheduled_Time <= @enddate