我试图在MS Access中的表中的字段中计算NA。我有多个NAs:
(它们对我们来说都意味着不同的东西,所以我实际上对于拥有不同的NA非常有用。)
这适用于一个特定的NA," #N / A N / A":
SELECT Count(IIf([Short Int % Eqy Flt] = '#N/A N/A' ,0 )) AS MyTotal
FROM tblFirst250
以上返回141,这似乎是正确的。
返回0:
SELECT Count(IIf([Short Int % Eqy Flt] LIKE '#N/A' ,0 )) AS MyTotal
FROM tblFirst250
上面应该返回142,因为我有141" #N / A N / A"和1" #N / A安全无效"。
我真正想要的是在[Short Int%Eqy Flt]字段中计算所有NA的东西。请参阅我上面的NAs列表。
答案 0 :(得分:2)
#
模式中使用时, Like
具有特殊含义[任何单个数字(0-9)]。你可以告诉Access将其视为普通的#
字符,将其放在像这样的字符范围内...... [#]
。
另外,我认为您希望匹配[#]N/A
后跟其他字符,因此将通配符添加到模式的末尾。
SELECT Sum(IIf([Short Int % Eqy Flt] LIKE '[#]N/A*', 1, 0)) AS MyTotal
FROM tblFirst250;
我使用Sum
代替Count
。但如果您更喜欢Count
...
SELECT Count(IIf([Short Int % Eqy Flt] LIKE '[#]N/A*', 1, Null)) AS MyTotal
FROM tblFirst250;