行源 - 组合框,按日期过滤组合框中弹出的内容

时间:2010-04-16 19:42:40

标签: sql ms-access

我有一个组合框,当有人想按年搜索时,我想弹出它。 它将允许他们在该组合框中仅查看某一年内发生的结果。

到目前为止,我有类似

的内容
SELECT DISTINCT Database_New.ASEC
FROM Database_New
WHERE (((Database_New.Date) >= DateValue('01/01/2001') 
AND  (((Database_New.Date) <= DateValue('12/031/2001')));

SELECT DISTINCT Database_New.ASEC
FROM Database_New
WHERE (((Database_New.Date) >= BETWEEN DateValue('01/01/2001') 
AND  DateValue('12/31/2001’)));

正如您所看到的,踢球者是我已经在ASEC字段下使用SELECT DISTINCT对事物进行排序。但是,我想逐年过滤一次,所以那一年没有发生的一大堆ASEC值(并且有很多很少发生,或者只会与一年相关)不会弹出可用。

到目前为止,我收到此错误

“查询表达式中的语法错误”(((Database_New.Date)&gt; = DateValue('01 / 01/2001')     AND(((Database_New.Date)&lt; = DateValue('12 / 031/2001')))'

我是VBA的人,不太擅长调试SQL。

它是否容易或者根本不能按照我设置的方式工作?

1 个答案:

答案 0 :(得分:0)

语法错误来自不平衡的括号。只是不要使用任何parens,你不需要像这一样简单的表达式:

Database_New.Date >= DateValue('01/01/2001') 
AND Database_New.Date <= DateValue('12/031/2001')