我目前正在使用过滤器从今天的日期到日期和日期之间的日期过滤掉表格中的数据。目前使用where条件
Select * FROM [Snapshot].[dbo].[ABCVIEW] where (getdate() >= fromdate and (todate = '1900-01-01 00:00:00.000')) or getdate() between fromdate and todate
在使用任何过滤器
之前,还有今天的日期但是我使用的过滤器我无法看到todate = 2016-05-31 00:00:00.000。我试着添加
todate<= getdate()
进入过滤器但仍无用。在结果中我无法看到今天的日期,例如:todate = 2016-05-31 00:00:00.000请帮助解决这个问题。
答案 0 :(得分:1)
getdate返回当前时间,该时间大于2016-05-31 00:00:00.000
所以如果你想包括昨晚的午夜从getdate()减去1:
Select *
FROM [Snapshot].[dbo].[ABCVIEW]
where (getdate() >= fromdate
and (todate = '1900-01-01 00:00:00.000'))
or getdate()-1 between fromdate and todate
答案 1 :(得分:0)
如果您转换为DATE,您只需要日期.......
SELECT Convert(date, getdate())
所以你可以使用BETWEEN
.......
CONVERT( Date, fromDate) and CONVERT(Date, DateAdd( d, 1, toDate))