我正在尝试编写一个Access查询(Access 2013),它使用IIF语句首先检查Option Frame的值,然后,如果值为" 1",请使用日期范围或,如果该值是其他任何值,则查找所有记录(仅限值" 1"和" 2"可用)。我的查询标准是......
table
当我的选项框架值设置为" 2"我按预期返回所有记录,但当我的Option Frame值设置为" 1"尽管在FromDateText和ToDateText TextBox字段中提供的两个日期之间有大量的日期记录,但我根本没有得到任何结果。
这个真的很难过,所以任何帮助都会感激不尽。谢谢,Mort640。
答案 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]