我在Microsoft Access上遇到了数据库问题,我使用此过滤器来获取今天的日期:
(Year([Open Tasks].[Data])=Year(Date()) AND DatePart("d",[Open Tasks].[Data],0)=DatePart("d",Date(),0))
但是查询显示错误的日期,例如,如果我选择过滤器,今天是11月4日,它将显示8月4日,10月4日等的结果......
为了显示昨天的结果我使用
(Year([Open Tasks].[Data])=Year(Date()-1) AND DatePart("d",[Open Tasks].[Data],0)=DatePart("d",Date()-1,0))
同样的问题,如果今天是11月4日,它将显示11月3日,10月3日,8月3日等的结果......
答案 0 :(得分:0)
我不确定"今天的日期"手段。要查看日期是否与当前日期相同,您可以使用DateValue([Open Tasks].[Data])=Date()
和昨天DateValue([Open Tasks].[Data])=DateAdd("d",-1,Date())
如果您的字段是文本而不是日期,或者它可能包含时间元素,则只需DateValue
。
如果由于某种原因你必须使用这个表格:
Year([Open Tasks].[Data])=Year(Date())
使用
Year([Open Tasks].[Data])=Year(Date()) AND Month([Open Tasks].[Data])=Month(Date()) AND Day([Open Tasks].[Data])=Day(Date())