我想合并我的2 If语句的条件结果。首先,如果语句结果只显示0结果,则在第二个if语句结果中,其中一个必须大于0 ...我想要做的是保留第二个条件,如果像我的代码那样的statament则先修改...
If (Inventory) <> 0 Then
If Apple = "" And Banana = "" Then
strSQL = strSQL & " AND (myApple = 0 AND myBanana = 0)"
End If
End If
If int(Inventory) <> -1 Then
If Apple = "" And Banana = "" Then
strSQL = strSQL & " AND (myApple <> 0 OR myBanana <> 0)"
End If
End If
这是一张小表,显示了我的两个条件导致的结果:我想要的是什么
Inventory | Desired result
-----------+---------------
-1 | show both zero or at least one not be zero (Show all)
0 | at least one must not be zero |
答案 0 :(得分:2)
答案 1 :(得分:0)
这是一个小表,显示了您的两个条件导致的结果:
Inventory | Desired result -----------+--------------- -1 | both must be zero 0 | at least one must not be zero all others | both must be zero and at least one must not be zero
您会看到任何非0或-1的数字都会导致永远无法满足的条件。考虑你的请求,画一个像我这样的表,然后相应地写你的if语句。你在那里用什么语言?这是一种基本方言吗?也许有一个CASE,SWITCH或ELSEIF结构可以使您的条件更具可读性。
编辑:根据你编辑过的问题(但如上所述,一旦你有一个想要的结果表,写一个if语句很容易,你可以自己完成):
IF Inventory = 0 THEN
strSQL = strSQL & " AND (myApple <> 0 OR myBanana <> 0) "
END IF
无需检查Inventory = -1,因为“零或至少一个不为零”表示全部(零,一零或两者都不为零)。 (或者你想检查NOT NULL吗?)