我有一个名为'DEMO'的表。它有一个名为'SEX'的专栏,有记录,即'男','女'或空白。在MS Access中使用SQL计算列百分比
我想找个 '男性' 由百分比:
(计数 '男性'/(总记录数 - 空白记录))* 100
在一个单一的查询。
我正在使用MS Access 2010和.accdb文件。
我有一个名为'DEMO'的表。它有一个名为'SEX'的专栏,有记录,即'男','女'或空白。在MS Access中使用SQL计算列百分比
我想找个 '男性' 由百分比:
(计数 '男性'/(总记录数 - 空白记录))* 100
在一个单一的查询。
我正在使用MS Access 2010和.accdb文件。
创建一个交叉表查询来分隔这些值。
使用公式创建一个新的查询,打开总计,以便在回报中只显示一行。 笨重,但有效。
我试过psadac了有轻微的变化,它似乎为我工作得很好的答案。我正在使用Access 2010.
SELECT Sum(IIf([SEX]= "Male",1,0))/Count(*) AS Ratio
FROM DEMO
HAVING (((Sum(IIf([SEX]= "Male",1,0))/Count(*)) Is Not Null));
感谢您的建议。我通常会这样做,除非我有100个这样的查询来创建。这个想法是在Excel中'生成'SQL查询语句,即单个SQL查询是理想的。 – pbb 2014-09-25 01:36:01