我遇到语法错误,已对其进行了多次更改,重新输入并试图绘制 map 。现在,我的头快要耗尽了,出于绝望,我求助于对此有所关注的人。
我可能会 push 它尝试获取iif语句的不同计数,但是这个问题可能不是技术问题,而是更多地关注...
我没有FROM/WHERE子句的问题,但提供它们是供其他引用。
如果我做错了什么,请帮助我:
(SELECT DISTINCT(COUNT(IIF(ISNULL(CombineTables.[Product Description]),
IIF(ISNULL(CombineTables.[Product Number (OEM)]),
IIF(ISNULL(CombineTables.[Product Number (under supplier PA)],"Incomplete Data",CombineTables.[Product Number (under supplier PA)])),
CombineTables.[Product Number (OEM)]),
CombineTables.[Product Description])))
FROM CombineTables WHERE [PA#]=Forms!PADiagnosticsForm!Combo2 AND "QTR." & " " & CombineTables.Quarter & "-" & CombineTables.Year=Forms!PADiagnosticsForm!List68)
FROM CombineTables
WHERE CombineTables.[Price Agreement Price]*CombineTables.Quantity-CombineTables.[Total Extended Price]<>0 And CombineTables.[PA#]=Forms!PADiagnosticsForm!Combo2 And "QTR." & " " & CombineTables.Quarter & "-" & CombineTables.Year=Forms!PADiagnosticsForm!List68;
我提前谢谢你。
最佳答案
您的查询有几处错误:
(
之前的SELECT
使其成为第二个FROM CombineTables
之前的表达式。因此,它缺少开头的SELECT
。如果这不是您的完整查询,那么它对尝试帮助您的人们没有帮助。 NZ(A,B) is identical to and more concise than
IIF(ISNULL(A,B,A))`COUNT
模式可疑,尤其是对于所有IIF(ISNULL
。因为实际上COUNT
编码的内容永远不会为NULL,所以您最好将COUNT
的整个块重写为COUNT(1)
。 COUNT
与SUM不同,它不在乎所计数的实际值,它只在乎该值是否为NULL(计数为0,任何非NULL计数为1)。 关于sql - 语法错误SQL Access嵌套的IIF ISNULL语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15753797/