Ms Access 简明教程
MS Access - Grouping Data
在本章中,我们将介绍如何在 Access 中按一组记录进行计算。我们已经创建了一个按行或按记录进行计算的字段来创建行总计或小计字段,但是如果我们希望按一组记录而不是按各个记录进行计算该怎么办?我们可以通过创建称为 Aggregate Query 的内容来执行此操作。
Aggregate Query
聚合查询也称为总计或汇总查询是一种求和、求总量或分组查询。它可以是总金额或总量,也可以是一组记录或记录子集。聚合查询可以执行多种操作。这是一个简单的表格,列出了根据一组记录求总和的一些方法。
S.No |
Aggregate Functions & Description |
1. |
Sum Adds the field values |
2. |
Avg 字段值的平均值 |
3. |
Min Lowest (minimum) field value |
4. |
Max Highest (maximum) field value |
5. |
Count 值的计数(记录数) |
6. |
StDev 包括日期/时间字段的字段值的标准差 |
7. |
Var 包括日期/时间字段的字段值方差 |
让我们打开数据库,转到查询设计并包含以下表格 -
关闭此对话框,以下两个字段将显示在查询网格中,如下面的屏幕截图所示。
这是一个简单的查询,我们只显示了两个字段—— book title 和 quantity ,当我们运行它时,我们将在我们的数据库中看到每一个单个订单。
现在让我们运行这个查询,您将看到以下结果。
这就是书名重复的原因。此处为每本图书分别下了不同的订单,并且它们订购的数量不同。让我们假设我们只想查看只列出一次的书名的摘要。然后列在其旁边的数量之和。
现在让我们转到设计视图,在设计选项卡中,您会看到一个西格玛符号。这是您的总计按钮。
单击西格玛符号,它将在表格行中的字段下方打开另一行,您可以在此指定如何对该查询进行分组。
现在我们按书名进行分组,并对数量字段进行求和。
如果我们单击 group by area 并进一步单击下拉菜单,所有的选项都将被列出来。在本例中,我们将选择选项 Sum ,然后运行您的查询。
现在您可以看到每本书,以及所有单笔订单,这些订单显示在书名旁边。
Concatenation in Access
我们学习了规范化的过程,将信息存储在不同的字段中。有时您希望一起查看或查看数据,例如将名字和姓氏字段合并为单个字段。您可以通过创建一个连接一个或多个字符串的计算字段来一起显示这些信息。您还可以添加您想要的其他字符,如逗号或句点。
-
要联接 Access 中,可以使用两种不同的运算符 ampersand (&) 和 plus (+) 符号。
-
“和”符号会将两个字符串合并为一个字符串,而加号会将两个字符串合并并传播 NULL 值,例如,如果一个值为 NULL,整个表达式计算结果为 NULL。
Example
让我们举一个简单的例子来理解使用查询设计创建新查询的过程。这将是一个非常简单的查询,它将从客户表中提取信息。
现在,让我们添加 tblCustomers 关闭表的表格对话框。我们尝试将一些简单的命名字段与一些连接进行连接。
现在,让我们添加名和姓字段并运行查询。
如你所见,名和姓被分成了两个不同的字段。
我们需要一起显示这些信息。
回到 Design View ,并在第三个字段创建一个名为 full name 的新字段。现在,添加全名并输入将这两个字段连接在一起的表达式。
让我们运行查询,然后你将看到一个新的计算字段。
它可以连接来自这两个字段的信息,但它并非完全按照我们希望的方式显示。它将所有文本运行在一起,因为它正在按照我们要求的方式执行。现在,我们将不得不要求 Access 在这两个字段的信息之间添加空格。
现在让我们回到设计视图并向该表达式添加另一个部分。
在引号内添加一个空格和另一个和号。这使得 Access 取自名字段的信息;用空格将它添加,然后在最后添加姓字段的信息。现在,再次运行查询,然后你将看到以下结果。