通过SQL查询计算MS Access中的空白字段
问题描述:
我有一个名为'DEMO'的表。在“性别”一栏下,我想了解我有多少个空白单元格?通过SQL查询计算MS Access中的空白字段
我曾尝试:
SELECT COUNT(SEX)AS CountIfSexNull从演示WHERE(((DEMO.SEX)IS NULL));
然而,得到的0
结果当我使用“查询设计”选择列“SEX”,然后手动筛选空白,我得到的2
查询值正常工作在数字域,即年龄和我得到一个正确的答案,除了代替“为NULL”我使用“0”,即
SELECT COUNT(DEMO_AGE)AS CountIfAgeNull从演示WHERE(DEMO.DEMO_AGE = 0) ;
我正在使用MS Access 2010和.accdb数据库。
答
COUNT [Fieldname]
不计空,要么使用一个ID或*,例如:
SELECT Count(*) AS CountIfSexNull
FROM DEMO
WHERE DEMO.SEX Is Null
参考:In SQL is there a difference between count(*) and count(<fieldname>)
+0
谢谢!这工作。 – pbb 2014-09-24 14:10:02
“”或“”不为空 - 也许你有一个默认值的柱。否则:更多信息 - 字段类型... – niyou 2014-09-24 14:07:27
Fionnuala的回答是正确的。问题在于你想要计算一个没有数据的列,这就是为什么它显示为0.通过使用COUNT(*)它将查看行,而不是给你正确的答案。 – TJH 2014-09-24 14:13:52