Access 2003完整教程:在查询中汇总或聚合所有行的值 (ADP)

注释本主题中的信息仅适用于 Microsoft Access 项目 (.adp)。

背景信息

使用聚合函数,可以为表中的所有值创建一个汇总。例如,可以创建如下查询,以显示titles表:

SELECT SUM(price)
FROM titles

将聚合函数用于多列可以在同一查询中创建多个聚合。例如,可以创建一个查询,计算price列的总计和discount列的平均值。

在同一查询中,也可以用不同的方法(例如总计、计数和求平均值)聚合相同的列。例如,以下查询计算titles表的price字段的平均值和汇总值:

SELECT AVG(price), SUM(price)
FROM titles

如果添加了一个搜索条件,可以汇总与条件匹配的行的子集。

注释也可以对表中所有的行或满足指定条件的行进行计数。

当为表中的所有行创建单个聚合值时,仅显示这些行本身的聚合。例如,如果计算titles表的price字段的总计,不用显示单个的书名、出版商名称等等。

注释如果您正在进行小计,即创建组,则可显示每个组的列值。

聚合所有行的值

  1. 在“数据库”窗口中,单击“对象”下的“查询”按钮图像,再单击要打开的查询,然后单击“数据库”窗口工具栏上的“设计”
  2. 请确保要聚合的表、视图或函数已在“图表”窗格中。
  3. 用右键单击“图表”窗格的背景,从快捷菜单中选择“分组依据”。“查询设计器”会将一个“分组”列添加到“网格”窗格的网格中。
  4. 添加想要汇总到“网格”窗格的列。确保已将列标记为输出。“查询设计器”将为聚合的列自动分派别名。可以用更有意义的别名代替这些别名。
  5. “分组”网格列中,选择适当的聚合函数,如总计平均值最小值最大值计数。如果只想聚合结果集中的唯一行,选择一个带 DISTINCT 选项的聚合函数,例如Min Distinct。 不要选择“分组”、“表达式”或Where,因为当聚合所有行时不能应用那些选项。

    “查询设计器”用用户指定的聚合函数替换“SQL”窗格的语句中的列名称。例如,SQL 语句可能是这样的:

    SELECT SUM(price)
    FROM titles
    
  6. 如果要在查询中创建多个聚合,重复步骤 3 和 4。

    当将其他列添加到查询输出列表中或“分组依据”列表时,“查询设计器”自动将“分组依据”项填到网格的“分组”列中。选择合适的聚合函数。

  7. 如果需要,添加搜索条件以指定要汇总行的子集。

运行查询时,数据表显示指定的聚合。

注释在明确关闭“分组”模式之前,“查询设计器”将聚合函数作为“SQL”窗格中 SQL 语句的一部分保留。因此,如果通过更改查询类型或更改“图表”窗格中出现的表、视图或函数来修改查询,查询结果中可能会包含无效的聚合函数。

上页:Access 2003完整教程:细分数据库图表 (ADP) 下页:Access 2003完整教程:使用自定义表达式汇总或聚合值 (ADP)

Access 2003完整教程:在查询中汇总或聚合所有行的值 (ADP)

Access 2003完整教程:使用自定义表达式汇总或聚合值 (ADP)Access 2003完整教程:在查询中使用表达式 (ADP)
Access 2003完整教程:在同一查询中使用 HAVING 和 WHERE 子句 (ADP)Access 2003完整教程:验证查询 (ADP)
Access 2003完整教程:查看外键约束属性 (ADP)Access 2003完整教程:缩放数据库图表 (ADP)
Access 2003完整教程:即将删除一行或多行。Access 2003完整教程:不允许空约束表达式。
Access 2003完整教程:DELETE 语句与 COLUMN REFERENCE 约束冲突。Access 2003完整教程:已对多行发生影响。
Access 2003完整教程:已成功执行了查询。Access 2003完整教程:已对照数据源检查过 SQL 语法。
Access 2003完整教程:确定要删除数据库中选定的关系吗?Access 2003完整教程:“数据库设计器”出错
Access 2003完整教程:删除选定的列将同时删除关系。Access 2003完整教程:是否保存对数据库图表的更改?
Access 2003完整教程:是否保存对该表的更改?Access 2003完整教程:INSERT INTO 子句的值列表中出错:无法识别“<Os>”
Access 2003完整教程:名称无效。必须为对象提供名称。Access 2003完整教程:不能对空列编制索引。
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号