access 2007在查询中使用多值字段
时 间:2008-04-26 07:51:59
作 者:Microsoft ID:11 城市:上海 QQ:3002789054
摘 要:在查询中使用多值字段
正 文:
在 Microsoft Office Access 2007 中,您可以创建可存放多个值的字段,例如分配了问题的人员的列表。多值字段非常适合于某些情况,例如,当您使用 Office Access 2007 来处理存储在 Microsoft Windows SharePoint Services 3.0 列表中的信息,并且该列表所包含的某个字段使用的是 Windows SharePoint Services 3.0 中可用的其中一种多值字段类型时。
本文讨论多值字段以及如何在查询中使用多值字段。
什么是多值字段?
假设您有一项任务要分配给某个雇员或承包商,但您认为需要将它分配给多个人员。在 Office Access 2007 中,您可以创建一个多值字段,这样就可从列表中选择人员。
单击组合框时,复选框显示为选中状态以指示您的选择。您可以选中或清除列表中的项目,然后单击“确定”提交您的选择。
所选的人员将存储在多值字段中,并在显示时用逗号分隔(默认情况下)。
多值字段背后的理念是使您在选择并存储多个选项等情况下能够轻松地提供支持,而无需创建更高级的数据库设计。多值字段对于与 Windows SharePoint Services 的集成也很重要,因为 SharePoint 列表也支持多值字段。
您可能想知道为什么 Office Access 2007 允许您在一个字段中存储多个值,而大多数关系数据库管理系统禁止这样做。答案是:Office Access 2007 中的数据库引擎并不真正将多个值存储在一个字段中。即使您看到和使用的似乎是一个字段,但这些值实际上单独存储,并且在一个隐藏的系统表中进行管理。Access 数据库引擎会帮您处理这些工作,自动分隔数据并将它们重新收集在一起,就像它们是在一个字段中。
从技术角度来说,Access 多值字段建立了一个多对多关系模型。例如,考虑一个事件表,您可以在其中将每个事件的责任分配给一个或多个雇员。假设您创建一个名为“AssignedTo”的多值字段,用于将事件分配给雇员。事件和雇员之间是多对多的关系。也就是说,您可以将许多雇员分配给任何一个事件,也可以将任何一个雇员分配给许多事件。
查询简介
数据库的主要用途是提供信息:“我公司最畅销的产品是什么?谁是我们的最佳客户?我公司在哪些方面没有达到销售目标?”。您可以从设计完善的数据库中找到所有这些问题的答案。要从 Access 数据库中得到答案,您可以创建一个查询并输入所需的条件。查询值的数据可用来自一个或多个表。在 Access 检索到解答问题的数据后,您可以查看和分析这些数据。在创建了查询后,您可以将该查询作为窗体、报表、图形甚至其他查询的基础。
Office Access 2007 允许您在某些查询中通过特定方式使用多值字段。您可以在查询中显示多值字段,在查询内的多值字段中显示单个值以及使用多值字段执行某些选定的聚合运算和动作查询。
在查询中显示多值字段
在查询中显示多值字段时,您必须决定是要显示包含由逗号分隔的所有值的整个多值字段,还是显示每个值的单独行。例如,假设您有一个“问题”表,其中包含用于向人员分配事件的“分配给”字段。您可以使用以下步骤构建一个包含“分配给”字段的查询:
- 单击“Microsoft Office 按钮”,然后单击“打开”。
- 在“打开”对话框中,选择并打开数据库。
- 在“创建”选项卡上的“其他”组中,单击“查询设计”。
- 在“显示表”对话框中,单击包含多值字段的表(在本例中为“问题”表),然后单击“添加”。
- 单击“关闭”。
- 将要使用的字段拖动到查询设计网格。在本例中,将“标题”字段和名为“分配给”的多值字段拖动到查询网格。
- 在“设计”选项卡上的“结果”组中,单击“运行”。
您的查询结果将如下图中所示:第一列显示问题标题,第二列显示多值字段:
在使用设计视图创建查询时,Access 会自动生成相应的 SQL(结构化查询语言)语句。SQL 是 Access 使用的查询语言。可以使用以下步骤切换到 SQL 视图来查看 SQL 语句。
- 在“设计”选项卡上的“结果”组中,单击“视图”下的箭头以显示“视图”菜单。
- 单击
Access软件网QQ交流群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- Access对子窗体数据进行批...(10.30)
- 最精简的组合框行来源数据快速输...(10.25)
- Access仿平台的多值选择器...(10.24)
- 【Access日期区间段查询】...(10.22)
- 【Access源码示例】VBA...(10.12)
- Access累乘示例,Acce...(10.09)
- 数值8.88,把整数8去掉,转...(10.08)
- 【Access自定义函数】一个...(09.30)
- 【Access选项卡示例】Ac...(09.09)
学习心得
最新文章
- Access判断多条明细的配方或订...(11.30)
- 如何让后台数据库在局域网共享时,且...(11.29)
- 【Access月初月末日期设置方法...(11.29)
- 【Access IIF函数嵌套示例...(11.26)
- Access快速开发平台--使用组...(11.25)
- Access快速开发平台--对上传...(11.22)
- Access快速开发平台企业版--...(11.18)
- 不会用多表联合查询,多表查询没结果...(11.16)
- 【案例分享】主键字段值含有不间断空...(11.16)
- Access快速开发平台--后台D...(11.14)