-1

如何在 MS Access 2007 中编写查询,同时显示指定字段中每一行的表中总记录的计数和百分比?

例如,如果我的表有一个名为“性别”的字段,我应该编写什么查询来查看男性的行数和百分比以及女性的行数和百分比?

因此,如果表有 1000 条记录,结果将类似于:

Men.....600.....60%
Women...400.....40%

我可以很容易地编写一个只给我行数的查询,但我不知道如何也能看到百分比。

我应该提到我不知道 SQL。我在创建查询时使用设计视图。但是,如果您可以将 SQL 中的查询文本提供给我,我可以将其复制并粘贴到新查询中,然后保存。

4

1 回答 1

0

它不是 SQL 本身的一部分,但您可以在查询中使用 VBA 函数来计算表中的记录数量:DCount ( MSDN )。

在查询设计器中复制并粘贴以下行(顶行,每列一行):

    TotalMen: DCount("*";"[TableNameHere]";"[Gender]='Male'")
    TotalWomen: DCount("*";"[TableNameHere]";"[Gender]='Female'")

然后,您可以通过对返回值执行一些简单的数学运算来获得百分比(同样每列一行):

    TotalPersons: [TotalMen]+[TotalWomen]
    PercentageMen: [TotalMen]/[TotalPersons]
    PercentageWomen: [TotalWomen]/[TotalPersons]

不要忘记将格式设置为百分比,否则值将显示为 0,6 和 0,4 而不是 60% 和 40%。

顺便说一句,可能有更简洁的方法来做到这一点。我试图让它可读。

PS:不要忘记替换表和字段的名称。

于 2012-09-24T10:11:38.937 回答