使用查询对数据求和

使用查询对数据求和

本文介绍如何使用一种称为聚合函数的函数对查询查询中的结果集。 本文还简要介绍了如何使用其他聚合函数(如 COUNTAVG) 对计算结果中的值进行计数或结果集。 此外,本文介绍如何使用"总计行"( Access 中的一项功能)对数据求和,而无需更改查询的设计。

你要做什么?

了解对数据求和的方法

可以使用名为聚合函数的函数类型对查询中的一列数字求和。 聚合函数对一列数据执行计算并返回单个值。 Access 提供各种聚合函数,包括Sum、Count、Avg (计算平均值) 、最小值最大值。 通过将 Sum 函数添加到查询来对数据求和,使用Count函数对数据进行计数,等等。

此外, Access 提供了多种将 Sum 和其他聚合函数添加到查询的方法。 你可以:

  • 在数据表视图中打开查询并添加"总计"行。 使用汇总行 Access ,可以在查询查询的一列或多列中使用聚合函数结果集而无需更改查询设计。

  • 创建总计查询。 汇总查询跨记录组计算小计;"总计"行计算一个或多个列的总计 (数据) 字段。 例如,如果要按市/县或季度对全部销售额进行分类汇总,请使用总计查询按所需类别对记录进行分组,然后对销售数据进行求和。

  • 创建交叉表查询。 交叉表查询是一种特殊类型的查询,在类似于 Excel 工作表的网格中显示其结果。 交叉表查询汇总值,然后按两组事实进行分组 - 一组在 (行标题) 旁设置,另一组设置为顶部 (列标题) 。 例如,可以使用交叉表查询来显示过去三年每个城市的销售总额,如下表所示:

城市

2003

2004

2005

巴黎

254,556

372,455

467,892

悉尼

478,021

372,987

276,399

Jakarta(雅加达)

572,997

684,374

792,571

...

...

...

...

注意: 本文档中的操作方法部分强调使用 Sum 函数,但请记住,可以在"汇总"行和查询中其他聚合函数。 有关使用其他聚合函数的信息,请参阅本文稍后的"聚合 函数 参考"部分。

有关其他聚合函数的使用方法的详细信息,请参阅"在数据表内显示 列总计"一文

以下部分中的步骤介绍了如何添加汇总行、使用汇总查询对各组的数据求和,以及如何使用交叉表查询跨组和时间间隔对数据进行小计。 在继续操作时,请记住,许多聚合函数仅适用于设置为特定字段的字段中数据类型。 例如 ,SUM 函数仅适用于设置为数字、小数或货币数据类型的字段。 有关每个函数所需的数据类型详细信息,请参阅本文稍后的"聚合函数参考 "部分。

有关数据类型的一般信息,请参阅文章"修改 或更改数据类型字段的数据集

返回页首

准备一些示例数据

本文中的操作说明部分提供示例数据的表。 操作步骤使用示例表来帮助了解聚合函数如何工作。 如果需要,可以选择性地将示例表添加到新的或现有的数据库中。

Access 提供了多种将这些示例表添加到数据库的方法。 您可以手动输入数据,您可以将每个表复制到 Excel 等电子表格程序中,然后将工作表导入 Access,或者可以将数据粘贴到文本编辑器(如记事本)中,然后从生成的文本文件导入数据。

本部分中的步骤介绍如何在空白数据表中手动输入数据,以及如何将示例表复制到电子表格程序,然后将这些表导入 Access。 有关创建和导入文本数据的信息,请参阅"导入或链接到文本文件 中数据"一文

本文中的操作步骤使用下表。 使用这些表创建示例数据:

" 类别" 表:

类别

小人

游戏和拼图

艺术和帧

视频游戏

DVD 和电影

模型和爱好

体育

" 产品" 表:

产品名称

价格

类别

程序员操作图

$12.95

小人

为C# (家庭提供一个游戏板游戏,)

$158.50

游戏和拼图

关系数据库关系图

$225.00

艺术和帧

神奇计算机芯片 (500)

$326.50

游戏和拼图

Access! 游戏!

$229.50

游戏和拼图

计算机沙克和神秘的生物

$785.00

视频游戏

计算机程序程序练习! The DVD!

$148.88

DVD 和电影

Ultimate 飞行披萨

$367.50

体育

外部 5.25 英寸 Floppy Diskette Drive (1/4 缩放)

$655.00

模型和爱好

局领导非操作图

$788.88

小人

阴部

$533.33

视频游戏

构建自己的键盘

$779.50

模型和爱好

" 订单" 表:

订单日期

发货日期

发运城市

运费

11/14/2005

11/15/2005

Jakarta(雅加达)

$555.00

11/14/2005

11/15/2005

悉尼

$766.00

11/16/2005

11/17/2005

悉尼

$87.00

11/17/2005

11/18/2005

Jakarta(雅加达)

$433.00

11/17/2005

11/18/2005

巴黎

$1,050.00

11/17/2005

11/18/2005

斯图里达

$1,122.00

11/18/2005

11/19/2005

维也纳

$215.00

11/19/2005

11/20/2005

迈阿密

$525.00

11/20/2005

11/21/2005

维也纳

$1,980.00

11/20/2005

11/21/2005

巴黎

$1,870.00

11/21/2005

11/22/2005

悉尼

$81.00

11/23/2005

11/24/2005

Jakarta(雅加达)

$920.00

" 订单明细" 表:

订单 ID

产品名称

产品 ID

单价

数量

Discount

1

构建自己的键盘

1.2

$779.50

9

5%

1

局领导非操作图

2

$788.88

4

7.5%

2

计算机程序程序练习! The DVD!

7

$148.88

6

4%

2

神奇计算机芯片

4

$326.50

8

0

2

计算机沙克和神秘的生物

6

$785.00

4

0

3

Access! 游戏!

5

$229.50

5

15%

4

程序员操作图

1

$12.95

2

6%

4

Ultimate 飞行披萨

8

$367.50

8

4%

5

外部 5.25 英寸 Floppy Diskette Drive (1/4 缩放)

9

$655.00

4

10%

6

关系数据库关系图

3

$225.00

1.2

6.5%

7

阴部

11

$533.33

6

8%

7

关系数据库关系图

3

$225.00

4

9%

注意: 请记住,在典型的数据库中,订单明细表只包含"产品 ID"字段,而不包含"产品名称"字段。 示例表使用"产品名称"字段使数据更易于阅读。

手动输入示例数据

  1. 在“创建”选项卡上的“”组中,单击“”。

    Access 将新的空白表添加到数据库。

    注意: 如果打开新的空白数据库,无需执行此步骤,但每次需将表添加到数据库时均需此步骤。

  2. 双击标题行中的第一个单元格,然后输入示例表中字段的名称。

    默认情况下,Access 表示标题行中的空白字段,文本为" 添加新字段",如下所示:

    数据表中的新字段

  3. 使用箭头键移动到下一个空白标题单元格,然后键入第二个字段名称 (也可以按 Tab 或双击新单元格) 。 重复此步骤,直到输入所有字段名称。

  4. 在示例表中输入数据。

    输入数据时,Access 会推断每个字段的数据类型。 如果对关系数据库没有了解,应为表中的每个字段设置数据类型特定值,例如数字、文本或日期/时间。 设置数据类型有助于确保准确的数据输入,还有助于防止错误,例如,在计算中使用电话号码。 对于这些示例表,应让 Access 推断数据类型。

  5. 输入完数据后,单击"保存"。

    键盘快捷方式按 Ctrl+S。

    将显示“另存为”对话框。

  6. "表名称"框中,输入示例表的名称,然后单击"确定"。

    使用每个示例表的名称,因为"方法"部分中的查询使用这些名称。

  7. 重复这些步骤,直到创建本部分开头列出的每个示例表。

如果不想手动输入数据,请按照后续步骤将数据复制到电子表格文件,然后将电子表格文件中的数据导入 Access。

创建示例工作表

  1. 启动电子表格程序并创建一个新的空白文件。 如果使用 Excel,默认情况下会创建一个新的空白工作簿。

  2. 复制上面提供的第一个示例表并将其粘贴到第一个工作表中,从第一个单元格开始。

  3. 使用电子表格程序提供的技术重命名工作表。 为工作表指定与示例表相同的名称。 例如,如果示例表名为 "类别",请为工作表指定相同的名称。

  4. 重复步骤 2 和 3,将每个示例表复制到空白工作表并重命名工作表。

    注意: 您可能需要将工作表添加到电子表格文件。 有关执行该任务的信息,请参阅电子表格程序的帮助。

  5. 将工作簿保存到计算机或网络上的方便位置,然后执行后续步骤。

基于工作表创建数据库表

  1. 在“外部数据”选项卡的“导入”组中,单击“Excel”。

    -或-

    单击“更多”,然后从列表中选择电子表格程序。

    随即出现“获取外部数据-项目名称电子表格”对话框。

  2. 单击"浏览",打开在之前的步骤中创建的电子表格文件,然后单击"确定"。

    将启动导入电子表格向导。

  3. 默认情况下,如果按照上一节) 中的步骤操作,向导会选择工作簿 ("客户"工作表中的第一个工作表,该工作表中的数据将显示在向导页面的下半部分。 单击“下一步”

  4. 在向导的下一页上,单击"第一行包含列标题",然后单击"下一步"。

  5. (可选)在下一页上,使用"字段选项"下的文本框和列表更改字段名称和数据类型,或者从导入操作中忽略字段。 否则,请单击“下一步”。

  6. 保留选中"允许 Access 添加主键"选项,然后单击"下一步"。

  7. 默认情况下,Access 向新表应用工作表的名称。 接受名称或输入其他名称,然后单击"完成"。

  8. 重复步骤 1 到步骤 7,直到从工作簿中每个工作表创建一个表。

重命名主键字段

注意: 导入工作表时,Access 会自动将主键列添加到每个表,默认情况下,Access 将该列命名为"ID",并设置为自动编号数据类型。 本步骤介绍如何重命名每个主键字段。 这样做有助于清楚地标识查询中所有字段。

  1. 在导航窗格中,右键单击在上一步骤中创建的每个表,然后单击"设计视图"。

  2. 对于每个表,找到主键字段。 默认情况下,Access 会命名每个字段ID。

  3. 在每个 主键字段 的"字段名称"列中,添加表的名称。

    例如,将"类别"表的 ID 字段重命名为"类别 ID",将"订单"表的字段重命名为"订单 ID"。 对于"订单明细"表,将字段重命名为"详细信息 ID"。 对于"产品"表,将字段重命名为"产品 ID"。

  4. 保存所做的更改。

只要示例表出现在本文中,它们就会包含主键字段,并且使用上述步骤重命名该字段。

返回页首

使用"总计"行对数据求和

可以通过在数据表视图中打开查询、添加行,然后选择想要使用的聚合函数(如Sum、Min、MaxAvg)向查询添加汇总行。 本部分中的步骤介绍如何创建基本选择查询并添加"总计"行。 不需要使用上一部分中所述的示例表。

创建基本选择查询

  1. 在“创建”选项卡上的“其他”组中,单击“查询设计”。

  2. 双击要用于查询的表。

    所选表在查询设计器的上半部分显示为窗口。

  3. 双击要用于查询的表字段。

    可以包括包含描述性数据的字段,例如名称和说明,但必须包含包含数字或货币数据的字段。

    每个字段都显示在设计网格中的单元格中。

  4. 单击 " 按钮图像 运行查询。

    查询结果集显示在数据表视图中。

  5. (可选)切换到设计视图并调整查询。 为此,请右键单击查询的文档选项卡,然后单击"设计视图"。 然后,可根据需要通过添加或删除表字段来调整查询。 若要删除字段,请选择设计网格中的列,然后按 DELETE。

  6. 保存查询。

添加"总计"行

  1. 确保查询在数据表视图中打开。 为此,请右键单击查询的文档选项卡,然后单击"数据表视图"。

    - 或 -

    在导航窗格中,双击查询。 这会运行查询,将结果加载至数据表。

  2. 在“开始”选项卡上的“记录”组中,单击“合计”。

    数据 将显示一个新的"总计"行。

  3. "总计 "行中,单击要求和的字段中的单元格,然后从 列表中选择 "求和"。

隐藏"总计"行

  • 在“开始”选项卡上的“记录”组中,单击“合计”。

有关使用"总计"行的详细信息,请参阅"在数据 表内显示列总计"一文

返回页首

使用查询计算总计

总计是列中所有值的总和。 可以计算多种类型的总计,包括:

  • 对单个列中的值进行总和的简单总计。 例如,可以计算总运费。

  • 对多列中的值进行总和的计算总计。 例如,可以通过将多个项的成本乘以订购的项数,然后对结果值进行总计来计算总销售额。

  • 排除某些记录的总计。 例如,只能计算上周五的总销售额。

以下部分中的步骤介绍如何创建每种总计类型。 这些步骤使用"订单"和"订单明细"表。

"订单"表

订单 ID

订单日期

发货日期

发运城市

运费

1

11/14/2005

11/15/2005

Jakarta(雅加达)

$555.00

2

11/14/2005

11/15/2005

悉尼

$766.00

3

11/16/2005

11/17/2005

悉尼

$87.00

4

11/17/2005

11/18/2005

Jakarta(雅加达)

$433.00

5

11/17/2005

11/18/2005

巴黎

$1,050.00

6

11/17/2005

11/18/2005

斯图里达

$1,122.00

7

11/18/2005

11/19/2005

维也纳

$215.00

8

11/19/2005

11/20/2005

迈阿密

$525.00

9

11/20/2005

11/21/2005

维也纳

$1,980.00

10

11/20/2005

11/21/2005

巴黎

$1,870.00

11

11/21/2005

11/22/2005

悉尼

$81.00

1.2

11/23/2005

11/24/2005

Jakarta(雅加达)

$920.00

"订单详细信息"表

详细信息 ID

订单 ID

产品名称

产品 ID

单价

数量

Discount

1

1

构建自己的键盘

1.2

$779.50

9

0.05

2

1

局领导非操作图

2

$788.88

4

0.075

3

2

计算机程序程序练习! The DVD!

7

$148.88

6

0.04

4

2

神奇计算机芯片

4

$326.50

8

0.00

5

2

计算机沙克和神秘的生物

6

$785.00

4

0.00

6

3

Access! 游戏!

5

$229.50

5

0.15

7

4

程序员操作图

1

$12.95

2

0.06

8

4

Ultimate 飞行披萨

8

$367.50

8

0.04

9

5

外部 5.25 英寸 Floppy Diskette Drive (1/4 缩放)

9

$655.00

4

0.10

10

6

关系数据库关系图

3

$225.00

1.2

0.065

11

7

阴部

11

$533.33

6

0.08

1.2

7

关系数据库关系图

3

$225.00

4

0.09

计算简单的总计

  1. 在“创建”选项卡上的“其他”组中,单击“查询设计”。

  2. 双击要用于查询的表。

    如果使用示例数据,请双击"订单"表。

    该表显示在查询设计器上半部分的窗口内。

  3. 双击要求和的字段。 确保该字段设置为"数字"或"货币"数据类型。 如果尝试对非数字字段(如文本字段)中的值求和,则当您尝试运行查询时,Access 会在条件表达式错误消息中显示数据类型不匹配。

    如果使用示例数据,请双击"运费"列。

    如果要计算这些字段的总计,可以将其他数值字段添加到网格。 总计查询可以计算多个列的总计。

  4. “设计”选项卡上的“显示/隐藏”组中,单击“总计”按钮图像

    " 总计" 行显示在设计网格中 ,"分组方式 "显示在"运费"列的单元格中。

  5. 将"总计"行中单元格中的值更改为"求和"。

  6. 单击 按钮图像 运行查询,在数据表视图中显示结果。

    提示: 请注意,Access 在求和的字段名称的开头追加"SumOf"。 若要将列标题更改为更有意义的标题(如"总运费",请切换回"设计"视图,然后单击设计网格中"运费"列的"字段"行。 将光标放在"运费"旁边,键入"总运费",后跟冒号,如下所示:总运费:运费

  7. (可选)保存并关闭查询。

计算不包括某些记录的总计

  1. 在“创建”选项卡上的“其他”组中,单击“查询设计”。

  2. 双击"订单"表和"订单明细"表。

  3. 将"订单日期"字段从"订单"表添加到查询设计网格的第一列。

  4. 在首列的"条件"行中,键入日期 () -1。 该表达式从计算总数中排除当天的记录。

  5. 接下来,创建计算每个交易的销售额的列。 在网格中第二列的"字段"行中键入以下表达式:

    总销售额: (1-[订单详细信息]。[Discount]/100) * ([订单详细信息]。[单价]*[订单详细信息]。[数量])

    确保表达式引用设置为"数字"或"货币"数据类型的字段。 如果表达式引用设置为其他数据类型的字段,则当您尝试运行查询时,Access会在条件表达式中显示消息"数据类型不匹配"。

  6. “设计”选项卡上的“显示/隐藏”组中,单击“总计”

    " 总计" 行显示在设计网格中, 分组方式 显示在第一列和第二列中。

  7. 第二列中,将"总计"行单元格中的值更改为"求和"。 Sum 函数将各个销售数据相加。

  8. 单击 按钮图像 运行查询,在数据表视图中显示结果。

  9. 将查询另存为"每日销售额"。

    注意: 下次在设计视图中打开查询时,可能会注意到"总销售额"列的"字段"和"总计"行中指定的值略有变化。 表达式显示在Sum函数内,"总计"行显示Expression而不是Sum。

    例如,如果使用示例数据并创建查询 (如前面的步骤所示,) :

    总销售额:总 ( (1-[订单详细信息]。Discount/100) * ([订单详细信息]。单价*[订单详细信息]。数量) )

返回页首

使用总计查询计算组总计

本部分中的步骤介绍如何创建一个汇总查询,用于计算不同数据组的小计。 在继续操作时,请记住,默认情况下,总计查询只能包含包含组数据的字段(如"类别"字段)和包含要求和数据的字段,例如"销售"字段。 总计查询不能包含描述类别中项目的其他字段。 如果想查看该描述性数据,可以创建第二个选择查询,将总计查询中的字段与其他数据字段组合在一起。

本部分中的步骤介绍如何创建总计并选择确定每个产品的总销售额所需的查询。 这些步骤假定使用这些示例表:

"产品"表

产品 ID

产品名称

价格

类别

1

程序员操作图

$12.95

小人

2

为C# (家庭提供一个游戏板游戏,)

$158.50

游戏和拼图

3

关系数据库关系图

$225.00

艺术和帧

4

神奇计算机芯片 (500)

$326.50

艺术和帧

5

Access! 游戏!

$229.50

游戏和拼图

6

计算机沙克和神秘的生物

$785.00

视频游戏

7

计算机程序程序练习! The DVD!

$148.88

DVD 和电影

8

Ultimate 飞行披萨

$367.50

体育

9

外部 5.25 英寸 Floppy Diskette Drive (1/4 缩放)

$655.00

模型和爱好

10

局领导非操作图

$788.88

小人

11

阴部

$533.33

视频游戏

1.2

构建自己的键盘

$779.50

模型和爱好

"订单详细信息"表

详细信息 ID

订单 ID

产品名称

产品 ID

单价

数量

Discount

1

1

构建自己的键盘

1.2

$779.50

9

5%

2

1

局领导非操作图

2

$788.88

4

7.5%

3

2

计算机程序程序练习! The DVD!

7

$148.88

6

4%

4

2

神奇计算机芯片

4

$326.50

8

0

5

2

计算机沙克和神秘的生物

6

$785.00

4

0

6

3

Access! 游戏!

5

$229.50

5

15%

7

4

程序员操作图

1

$12.95

2

6%

8

4

Ultimate 飞行披萨

8

$367.50

8

4%

9

5

外部 5.25 英寸 Floppy Diskette Drive (1/4 缩放)

9

$655.00

4

10%

10

6

关系数据库关系图

3

$225.00

1.2

6.5%

11

7

阴部

11

$533.33

6

8%

1.2

7

关系数据库关系图

3

$225.00

4

9%

以下步骤假定"订单"表和"订单明细"表中的"产品 ID"字段之间具有一对多关系,"订单"表位于关系的"一"端。

创建总计查询

  1. 在“创建”选项卡上的“其他”组中,单击“查询设计”。

  2. 选择要用于的表,然后单击"添加"。

    每个表都显示为查询设计器上半部分的一个窗口。

    如果使用前面列出的示例表,请添加"产品"和"订单明细"表。

  3. 双击要用于查询的表字段。

    一般来说,只向查询添加组字段和值字段。 但是,可以使用计算而不是值字段 - 接下来的步骤将介绍如何这样做。

    1. 将"产品"表中的"类别"字段添加到设计网格。

    2. 在网格的第二列中键入以下表达式,创建计算每个交易销售额的列:

      总销售额: (1-[订单详细信息]。[Discount]/100) * ([订单详细信息]。[单价]*[订单详细信息]。[数量])

      确保在表达式中引用的字段是"数字"或"货币"数据类型。 如果引用其他数据类型的字段,则尝试切换到数据表视图时,Access 会在条件表达式中显示"数据类型不匹配"错误消息。

    3. “设计”选项卡上的“显示/隐藏”组中,单击“总计”

      " 总计 "行显示在设计网格中,该行的"分组 方式 "显示在第一列和第二列中。

    4. 第二列中,将"总计"行中的值更改为"求和"。 Sum 函数将各个销售数据相加。

    5. 单击 按钮图像 运行查询,在数据表视图中显示结果。

    6. 使查询保持打开状态,供下一部分使用。

      将条件与总计查询一同使用

      在上一部分创建的查询包括基础表中的所有记录。 它在计算总计时不排除任何顺序,并且显示所有类别的总计。

      如果需要排除某些记录,可以将条件添加到查询。 例如,可以忽略小于 $100 的事务,或只计算部分产品类别的总计。 本部分中的步骤介绍如何使用三种类型的条件:

    7. 计算总计时忽略某些组的条件。    例如,您将仅计算视频游戏、艺术和帧以及体育类别的总计。

    8. 计算后隐藏某些总计的条件。    例如,只能显示大于 $150,000 的总计。

    9. 排除单个记录而不包含在总计中的条件。    例如,当单价 *数量 (低于 $100 时,可以) 单个销售交易。

      以下步骤说明如何一个一个地添加条件,并查看对查询结果的影响。

      向查询添加条件

    10. 在设计视图中打开上一节中的查询。 为此,请右键单击查询的文档选项卡,然后单击"设计视图"。

      - 或 -

      在导航窗格中,右键单击查询,然后单击"设计视图"。

    11. "类别ID"列的"条件"行中,键入="小项"或"大项"或"艺术和帧"。

    12. 单击 按钮图像 运行查询,在数据表视图中显示结果。

    13. 切换回"设计"视图,在"总销售额"列的"条件"行中,键入>100。

    14. 运行查询以查看结果,然后切换回"设计"视图。

    15. 现在添加条件以排除小于 $100 的单个销售交易。 为此,需要添加另一列。

      注意: 不能在"总销售额"列中指定第三个条件。 在此列中指定的任何条件都适用于总计值,而不是单个值。

    16. 将表达式从第二列复制到第三列。

    17. 在新的"总计"行中,选择"位置",在"条件"行中,>20。

    18. 运行查询以查看结果,然后保存查询。

      注意: 下次在设计视图中打开查询时,可能会注意到设计网格中略有变化。 第二列中,"字段"行中的表达式将显示在Sum函数内,"总计"行中的值显示"表达式"而不是"求和"。

      总销售额:总 ( (1-[订单详细信息]。Discount/100) * ([订单详细信息]。单价*[Orde r 详细信息]。数量) )

      还将看到第四列。 此列是第二列的副本,但第二列中指定的条件实际上显示为新列的一部分。

返回页首

使用交叉表查询对多个组的数据求和

交叉表查询是一种特殊类型的查询,在类似于 Excel 工作表的网格中显示其结果。 交叉表查询汇总值,然后按两组事实进行分组 - 一组在 (侧设置一组行标题) ,另一组在顶部 (一组列标题) 。 下图演示了示例交叉表查询结果集部分示例:

示例交叉表查询。

在继续操作时,请记住交叉表查询不会始终填充 结果集 中所有字段,因为查询中使用的表并不总是包含每个可能的数据点的值。

创建交叉表查询时,通常包含多个表中的数据,并且始终包含三种类型的数据:用作行标题的数据、用作列标题的数据,以及要求和或以其他方式计算的值。

本部分中的步骤假定下表:

"订单"表

订单日期

发货日期

发运城市

运费

11/14/2005

11/15/2005

Jakarta(雅加达)

$555.00

11/14/2005

11/15/2005

悉尼

$766.00

11/16/2005

11/17/2005

悉尼

$87.00

11/17/2005

11/18/2005

Jakarta(雅加达)

$433.00

11/17/2005

11/18/2005

巴黎

$1,050.00

11/17/2005

11/18/2005

斯图里达

$1,122.00

11/18/2005

11/19/2005

维也纳

$215.00

11/19/2005

11/20/2005

迈阿密

$525.00

11/20/2005

11/21/2005

维也纳

$1,980.00

11/20/2005

11/21/2005

巴黎

$1,870.00

11/21/2005

11/22/2005

悉尼

$81.00

11/23/2005

11/24/2005

Jakarta(雅加达)

$920.00

"订单详细信息"表

订单 ID

产品名称

产品 ID

单价

数量

Discount

1

构建自己的键盘

1.2

$779.50

9

5%

1

局领导非操作图

2

$788.88

4

7.5%

2

计算机程序程序练习! The DVD!

7

$148.88

6

4%

2

神奇计算机芯片

4

$326.50

8

0

2

计算机沙克和神秘的生物

6

$785.00

4

0

3

Access! 游戏!

5

$229.50

5

15%

4

程序员操作图

1

$12.95

2

6%

4

Ultimate 飞行披萨

8

$367.50

8

4%

5

外部 5.25 英寸 Floppy Diskette Drive (1/4 缩放)

9

$655.00

4

10%

6

关系数据库关系图

3

$225.00

1.2

6.5%

7

阴部

11

$533.33

6

8%

7

关系数据库关系图

3

$225.00

4

9%

以下步骤说明如何创建交叉表查询,以按城市对总销售额进行分组。 查询使用两个表达式返回带格式的日期和销售总额。

创建交叉表查询

  1. 在“创建”选项卡上的“其他”组中,单击“查询设计”。

  2. 双击要用于查询的表。

    每个表都显示为查询设计器上半部分的一个窗口。

    如果使用示例表,请双击"订单"表和"订单明细"表。

  3. 双击要用于查询的字段。

    每个字段名称都显示在设计网格的"字段" 中的空白单元格中。

    如果使用示例表,请从"订单"表中添加"发货城市"和"发货日期"字段。

  4. 在"字段"行的下一个空白单元格中,复制并粘贴或键入以下表达式:总销售额:总 (CCur ([订单详细信息]。[单价]*[数量]* (1-[折扣]) /100) *100)

  5. 在“设计”选项卡的“查询类型​​”组中,单击“交叉表”。

    " 总计 "行和 交叉表行 显示在设计网格中。

  6. 单击"城市"字段中"总计"行中的单元格,然后选择"分组者"。 对"发货日期"字段执行相同的设置。 将"总销售额"字段的"总计"单元格中的值更改为"表达式"。

  7. 交叉表行中,将"城市"字段中的单元格设置为"行标题",将"发货日期"字段设置为"列标题",将"总销售额"字段设置为"值"。

  8. 在“设计”选项卡上的“结果”组中,单击“运行”。

    查询结果显示在数据表视图中。

返回页首

聚合函数引用

下表列出并描述了 Access 在"汇总"行和查询中提供的聚合函数。 请记住,Access 为查询提供的聚合函数比为"汇总"行提供的聚合函数要多。 此外,如果在连接到 Microsoft SQL Server 数据库) 的 Access 前端上处理 (Access 项目,可以使用 SQL Server 提供的较大聚合函数集。 有关该函数集详细信息,请参阅 Microsoft SQL Server Online。

函数

说明

数据类型 (的 us e)

平均值

计算某列的平均值。 列中必须包含数值、货币或日期/时间数据。 该函数会忽略空值。

数字、货币、日期/时间

计数

对列中的项数进行计数。

除复杂重复的标量数据外的所有数据类型,如多值列表的列。

有关多值列表的信息,请参阅多值字段和创建或删除 多值字段的文章指南

最大值

返回具有最大值的项。 对于文本数据,最高值为最后一个字母值 - Access 忽略大小写。 该函数会忽略空值。

数字、货币、日期/时间

最小值

返回具有最小值的项。 对于文本数据,最低值为第一个字母值 - Access 忽略大小写。 该函数会忽略空值。

数字、货币、日期/时间

标准偏差

计算值与平均值(均值)相差的程度。

有关使用此函数的详细信息,请参阅"在数据表内显示 列总计"一文

数字、货币

合计

累加列中各项的值。 仅适用于数值和货币数据。

数字、货币

方差

计算列中所有值的统计方差。 该函数仅可用于数值和货币数据。 如果表中包含的行少于两行,Access 将返回 null 值。

有关方差函数的详细信息,请参阅" 在数据表显示列总计"一文

数字、货币

返回页首

需要更多帮助?

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×