与IIF一样,日期范围不返回结果

时间:2016-02-29 12:39:36

标签: ms-access

我正在尝试编写一个Access查询(Access 2013),它使用IIF语句首先检查Option Frame的值,然后,如果值为" 1",请使用日期范围或,如果该值是其他任何值,则查找所有记录(仅限值" 1"和" 2"可用)。我的查询标准是......

table

当我的选项框架值设置为" 2"我按预期返回所有记录,但当我的Option Frame值设置为" 1"尽管在FromDateText和ToDateText TextBox字段中提供的两个日期之间有大量的日期记录,但我根本没有得到任何结果。

这个真的很难过,所以任何帮助都会感激不尽。谢谢,Mort640。

1 个答案:

答案 0 :(得分:0)

IIF返回,但您似乎正在尝试返回一些SQL逻辑 - 评估true / false部分然后返回。

您可以改为:

WHERE
    [Forms]![MaintenanceDueList]![OptionFrame] = 2 
OR
    XXX > [Forms]![MaintenanceDueList]![FromDateText] And XXX < [Forms]![MaintenanceDueList]![ToDateText]

或包含XXX而不是大于

WHERE
    [Forms]![MaintenanceDueList]![OptionFrame] = 2 
OR
    XXX BETWEEN [Forms]![MaintenanceDueList]![FromDateText] And [Forms]![MaintenanceDueList]![ToDateText]