MS Access - 数据分组

在本章中,我们将介绍如何在 Access 中对一组记录进行计算。 我们创建了一个逐行或逐条记录计算的字段,以创建行总计或小计字段,但如果我们想按一组记录而不是单个记录进行计算,该怎么办? 我们可以通过创建所谓的聚合查询来做到这一点。

聚合查询

聚合查询也称为总计或汇总查询,是总和、质量或组详细信息。 它可以是总金额或总金额,也可以是记录组或子集。 聚合查询可以执行许多操作。 下面是一个简单的表格,列出了对一组记录进行总计的一些方法。

S.No 聚合函数和描述
1.

Sum

字段值的求合值

2.

Avg

字段值的平均值

3.

Min

最低(最小)字段值

4.

Max

最高(最大)字段值

5.

Count

值的计数(记录数量)

6.

StDev

包括日期/时间字段在内的字段值的标准偏差

7.

Var

字段值的方差,包括日期/时间

让我们打开您的数据库并转到查询设计并包含下表 −

TblBooks

关闭此对话框,将显示以下两个字段,如以下屏幕截图中的查询网格所示。

屏幕截图

这是一个简单的查询,我们仅显示两个字段 - 书名(book title)数量(quantity),当我们运行它时,我们会看到数据库中的每个单独订单 .

现在让我们运行此查询,您将看到以下结果。

单独订单

这就是书名重复的原因。 这里的每本书都已单独订购,并且订购的数量不同。 假设我们只想查看仅列出一次的书名的摘要。 然后是旁边列出的数量的总和。

现在让我们转到"设计视图",在"设计"选项卡中,您将看到一个 Sigma 符号。 这是您的总计按钮。

屏幕截图

单击 sigma 符号,这将在表行中的字段下方打开另一行,您可以在此处指定如何对此查询进行分组。

GroupBy

我们现在将按书名进行分组并对数量字段进行求和。

如果我们点击按区域分组并进一步点击下拉菜单,所有选项都会列出来。 在本例中,我们将选择选项Sum,然后运行您的查询。

总和

您现在可以查看每本书以及显示在书名旁边的所有单独订单。

单独

Access 中的连接

我们学习了标准化的过程,将信息存储在不同的字段中。 有时您希望一起查看或查看数据,例如将名字和姓氏字段合并为单个字段。 您可以通过创建连接一个或多个字符串的计算字段来一起显示该信息。 您还可以添加您可能需要的其他字符,例如逗号或句点。

  • 要在 Access 中进行连接,可以使用两种不同的运算符:与号 (&)加号 (+)

  • & 符号会将两个字符串合并为一个,而加号会将两个字符串合并并传播 NULL 值,例如,如果一个值为 NULL,则整个表达式的计算结果为 null。

示例

让我们通过一个简单的示例来了解使用查询设计创建新查询的过程。 这将是一个非常简单的查询,从我们的客户表中提取信息。

现在让我们添加 tblCustomers 表关闭以显示表对话框。 我们将尝试使用一些简单的命名字段进行串联。

TblCustomers

现在让我们添加名字(firstname)和姓氏(lastname)字段并运行查询。

如您所见,名字和姓氏被分为两个不同的字段。

表名称

我们需要一起显示这些信息。

信息在一起显示

返回到设计视图,并在第三个字段中创建一个名为全名(fullname)的新字段。 现在,添加全名并键入将这两个字段连接在一起的表达式。

设计视图全名

让我们运行查询,您将看到一个新的计算字段。

计算字段

它可以将这两个字段的信息连接在一起,但它并不完全按照我们想要的方式显示。 它将所有文本一起运行,因为它按照我们要求的方式执行。 现在,我们必须要求 Access 在这两个字段的信息之间添加空格。

现在让我们返回到设计视图并向此表达式添加另一个部分。

设计视图全名

在引号内添加一个空格和另一个与号。 这使得 Access 从名字字段获取信息; 添加一个空格,然后在最后添加姓氏字段中的信息。 现在,再次运行查询,您将看到以下结果。

计算字段