Mysql Access 2010 IIF查询中的语法
我是Access的初始用户,正在尝试在表单内部构建查询 我正在处理我的第一个IIF查询,并且很难获得所需的行为 我试图根据4个条目,即[band]、[band2]、[band3]和[band4]提取结果 这就是我现在的处境:Mysql Access 2010 IIF查询中的语法,mysql,ms-access,ms-access-2010,Mysql,Ms Access,Ms Access 2010,我是Access的初始用户,正在尝试在表单内部构建查询 我正在处理我的第一个IIF查询,并且很难获得所需的行为 我试图根据4个条目,即[band]、[band2]、[band3]和[band4]提取结果 这就是我现在的处境: Like IIf(IsNull([forms]![financial_filter]![band]),"*",[forms]![financial_filter]![band]) Or Like [forms]![financial_filter]![band2] Or L
Like IIf(IsNull([forms]![financial_filter]![band]),"*",[forms]![financial_filter]![band]) Or Like [forms]![financial_filter]![band2] Or Like [forms]![financial_filter]![band3] Or Like [forms]![financial_filter]![band4]
这意味着如果[band]字段为空,它将提取所有波段的所有结果。但是如果[band]和/或[band2-4]字段被填充,它将只从这些字段中提取结果。这一切都在起作用
但是,如果用户将[band]字段留空,并且只在[band 2-4]字段中输入内容,则会显示所有结果,而不仅仅是与[band 2-4]字段中的数据相关的结果。请告知如何修改我的查询,以便如果用户选择了一个或多个波段,但没有在[band]字段中输入任何内容,则只填充选定的结果
谢谢
MikeIIF与查询无关。 IIF语句是IF的快捷方式。。然后。。其他的结束IF语句
MyResult=IIF(条件,Make1,Make2)
IF Condition THEN
MyResult=Make1
ELSE
MyResult= Make2
END IF
您可以嵌套IIF语句,但结果将难以读取和维护
因此,在您的情况下,我建议在表单的OnCurrent事件中用您的业务逻辑(IF-THEN ELSE END IF)或(IF-THEN ELSEIF…END IF)写几行代码,以改进代码的未来维护和可读性。谢谢您!这是有道理的…我将用几个If/Then/Else语句隔离所有条件!