我有一张名为'DEMO'的桌子。它有一个名为“SEX”的列,带有记录,即“男性”,“女性”或空白。
我希望通过以下方式找到“男性”的百分比:
(计算'男性'/(总记录 - 空白记录))* 100
全部在一个查询中。
我正在使用带有.accdb文件的MS Access 2010。
答案 0 :(得分:0)
创建一个交叉表查询以分隔值 使用公式创建一个新查询,启用总计,这样您只能在返回中获得一行。 笨重但有效。
答案 1 :(得分:0)
使用Access,您无法使用CASE WHEǸ
语法,但IIF
类似:
SELECT
SUM(IIF(SEX = 'Male', 1.0, 0.0))
/ COUNT(*) AS RATIO
FROM
DEMO
WHERE
SEX <> ''
答案 2 :(得分:0)
我尝试了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));