我有一个表有一个名为date1的字段.
当我在Access GUI数据表视图中查看表时,我可以看到日期是"正确的,因为date1从2013年10月1日到今天,2014年6月19日.当我在设计视图中查看table1时,我可以看到date1已格式化作为m/d/yyyy.
因此,当我运行此查询时,我预计仅在2014年4月1日到今天才会看到结果.但相反,我看到结果可以追溯到2013年.
SELECT *
FROM someTable
WHERE ((([someTable].medium1)='Direct'))
OR ((([someTable].medium1)='Paid Search')
AND (([someTable].date1)>=#4/1/2014#));
Run Code Online (Sandbox Code Playgroud)
我也尝试删除#.我只是在做了一些谷歌搜索后添加了那些.
任何人都可以发现为什么我的查询返回结果,其中date1小于2014年4月1日?
我认为你的OR正在抛弃结果.
该日期是否包含其他标准?(意味着所有值都应该在该日期之后?如果是,则where子句关闭.
SELECT *
FROM someTable
WHERE ([someTable].medium1 = 'Direct' OR [someTable].medium1 = 'Paid Search')
AND ([someTable].date1)>=#4/1/2014#);
Run Code Online (Sandbox Code Playgroud)
要么...
SELECT *
FROM someTable
WHERE [someTable].medium1 in ('Direct', 'Paid Search')
AND [someTable].date1 >= #4/1/2014#;
Run Code Online (Sandbox Code Playgroud)
要么...
SELECT *
FROM someTable
WHERE ([someTable].medium1='Direct' OR [someTable].medium1='Paid Search')
AND [someTable].date1>=#4/1/2014#;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5481 次 |
| 最近记录: |