用户之间的MS Access Date过滤器

时间:2011-12-12 20:46:25

标签: ms-access ms-access-2003

我有一个MS访问查询,它从用户获取日期并根据它选择值

SELECT *
FROM Table1    
WHERE ((DateValue([Table1].[Date_col]) 
Between "#"&[Forms]![Frm1]![Date1]&"#" 
and "#"&[Forms]![Frm1]![Date2]&"#"))

我的输出空了吗?

有什么想法的朋友吗?

1 个答案:

答案 0 :(得分:2)

您正在将表格的列转换为DateValue(即数字)以及您要转换为带有前导#

的字符串的其他列

将它们全部转换为日期:

SELECT * FROM Table1    
WHERE CVDate([Table1].[Date_col]) 
    BETWEEN CVDate([Forms]![Frm1]![Date1]) 
    AND CVDate([Forms]![Frm1]![Date2])

或者更好的是,如果它们已经是日期,请留下它们:

SELECT * FROM Table1    
WHERE [Table1].[Date_col]
    BETWEEN [Forms]![Frm1]![Date1]
    AND [Forms]![Frm1]![Date2]