范文一:创建交叉表查询
创建交叉表查询:其操作步骤如下:
(1)打开“学生成绩管理”数据库。
(2)在“数据库”窗口中,单击“对象”下的“查询” 。
(3)双击“在设计视图中创建查询”快捷选项,打开“显示表”对话框。双击“学生基本信 息表” 、 “课程表”和“成绩表” ,单击“关闭”按钮,关闭“显示表”对话框。
(4)单击“查询”菜单,或单击“查询设计”工具栏上的【查询类型】右侧的下拉按钮,打 开下拉菜单,选择“交叉表查询”命令。
⑸在查询“设计视图”中设计查询。
①在 “字段” 行的单元格中, 依次选择 “院系” 、 “年级” 、 “课程名称” 和 “成绩” 字段。 ②在 “总计” 行的 “院系” 、 “年级” 、 “课程名称” 3个列单元格中选择 “分组” , “成绩” 列单元格中选择“计数” 。
③在“交叉表”行的“院系” 、 “年级”列单元格选择“行标题” , “课程名称”列单元格 选择“列标题” , “成绩”列单元格选择“值” 。
⑹单击“查询设计”工具栏上“运行”按钮,查看查询结果。
⑺单击“视图”菜单下的“ SQL 视图” ,查看 SQL 语句。
⑻保存查询。
①单击“ SQL 视图”窗口的“关闭”按钮,显示一个对话框。
②单击“是”按钮,显示“另存为”对话框。
③在“查询名称”文本框中输入“各院各年级选课人数统计” 。
④单击“确定”按钮。
范文二:3.3交叉表查询
3.3 创建交叉表查询
所谓交叉表查询,就是将来源于某个表中的字段进行分组, 一组列在数据表的左侧,一组列在数据表 的上部 , 然后在数据表行与列的交叉处显示表中某个字段的各种计算值。
在创建交叉表查询时,用户需要指定三种字段,
1. 放在数据表最左端的 行标题 , 它把某一字段或相关的数据放入指定的一行中 , 最多可以指定 3个字 段 ;
2. 放在数据表最上面的 列标题 ,列标题本身不显示在交叉表中,而是对列标题字段中的值进行分组, 并将结果放入交叉表的第一行,最多只能指定 一个字段 ;
3. 放在数据表行与列交叉位置上的 值 ,用户需要为该字段指定 一个总计项 ,例如:SUM 、 AVG 、 COUNT 等,对于交叉表查询,用户只能指定一个总计类型的字段。
注意:使用“查询向导”时创建交叉表的数据源 必须来自同一个表或查询 。因此,如果只用到一个 表或查询,用“交叉表查询向导”比较简单;如果用到多个表或查询,使用“设计视图”则更方便
一、使用“查询向导”
例 1:在 “教学管理” 数据库中创建显示各个系别男女教师人数的交叉表查询, 命名为 “ qT1” 。 1、在查询窗口中,点击“新建”按钮,选择“交叉表查询向导” 。
二、使用“设计”视图
例 2:把例 1用设计视图来完成。
1、在“查询”对象中,双击“在设计视图中创建查询”选项;
2、把用到的相关表添加到设计视图中,
3、单击工具栏上的“查询类型”按扭右侧的向下箭头按扭,从下拉列表中选择“交叉表查询”选项,则 在下方的设计网格中添加了“交叉表”一行;
4、把字段添加到设计网格中;
5、 将 “姓名” 字段设置为 “行标题” , 将 “课程名称” 字段设置为 “列标题” , 将 “成绩” 字段设置为 “值” ;
6、将“姓名”和“课程名称”字段的总计行设置为“分组” ,将“成绩”字段设置为“第一条记录” ;
7、单击“保存”按扭,确定查询标题即可。
练习:在“教学管理”数据库中创建一个交叉表查询,使其显示每名学生每门课程的成绩。 命名为“ qT3” 。如下图所示。
本节课后练习:
WY 4— 2— (4)、 WY 21— 2— (3)、 WY 23— 2— (3)、 WY 24— 2— (3)
范文三:Access交叉表查询研究
福 建 电 脑 2010年第 9期
Access 交叉表查询研究
楚艳萍 , 程 普
(河南大学 计算中心 河南 开封 475004)
【 摘 要 】:交叉表查询是 Access 的一种特有查询 , 用来汇总和重构数据库中的数据 , 使得数据组织结 构更加紧凑 , 显示形式更加清晰 , 使用起来更加方便 。 本文从多个不同的方面对交叉表查询进行研究 , 提出 了交叉表查询的一些局限性并给出了解决的方法 。
【 关键词 】:查询 ; 设计视图 ; SQL
1、 引言
在教学过程中 , 学生对交叉表查询的理解 , 相对于 选择查询来说还是有一定难度 , 同时也由于受学时限 制 , 对交叉表查询的掌握也只限于最基本的方法 , 没有 从整体上去把握 , 不能在不同的情况下灵活运用 。 本文 根据课堂上对交叉表查询的教学经验 , 从不同方面对 交叉表查询进行研究 , 以期对交叉表查询有一个整体 的理解和把握 。
2、 交叉表查询研究
2.1基本概念
交叉表查询实际上就是将记录水平分组和垂直分 组 , 在水平分组与垂直分组的交叉位置显示计算结果 。 在创建交叉表查询时 , 需要指定三种字段 :
⑴ 行标题 :指定一个或多个字段并将字段分组 , 一 个分组就是一行 , 字段取值作为行标题 , 在查询结果左 边显示 。
⑵ 列标题 :只能指定一个字段并将字段分组 , 一个 分组就是一列 , 字段取值作为列标题 , 在查询结果顶端 显示 。
⑶ 交叉值 :只能指定一个字段 , 且必须选择一个计 算类型 , 如求和 、 计数 、 平均值 、 最小值 、 最大值 、 第一条 记录等 , 计算结果在行与列的交叉位置显示 。
2.2交叉表查询的建立
建立交叉表查询的方法大致分三种 :使用向导创 建 、 使用设计视图创建 、 使用 SQL 语句创建 。
使用向导创建的方法比较简单 , 只需根据提示从 一个表或查询中选择字段即可创建 。 对学生来说 , 只要 掌握了交叉表查询的概念 , 用向导创建交叉表查询就 很容易 , 本文不对此作进一步的说明 , 仅就后两种创建 方法加以介绍 。
2.2.1使用设计视图创建一般的交叉表查询
以
⑴ 双击
⑵ 选择
⑶ 选择作为行标题的字段 :双击
2.2.2创建带条件的交叉表查询
有两种情况 , 一种情况是对统计的数据设置条件 , 使得只有满足条件的数据参与统计 。
以
另一种是行标题或列标题设置条件 , 使得行 、 列标 题按指定条件进行显示 。
以
2.2.3创建带有计算的交叉表查询
以
174
福 建 电 脑
2010年第 9期
(上接第 180页 )
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
参考文献 :
[1]缪庆 . 浅谈机械设计课程中对创新设计和创新思维的培养 . 西南科技大学 《 高教研究 》, 2008年第 3期 [2]凌学文 . 关于 《 机械设计 》 教学的几点建议
《 江苏常州轻工职业技术学院学报 》 江苏常州 2007年 6月 [3]郭思乐 《 教育走向生本 》 人民教育出版社 2001年出版
也可以建立更为复杂的交叉表查询 , 如查询教师 编号末位数字为
SQL 查询是用 SQL 语句创建的查询 , 实际上 Ac -cess 的所有查询都是 SQL 查询 , 在查询设计视图中创 建查询时 , Access 自动生成等效的 SQL 语句 。 如查询 每个班级每门课的平均成绩 , SQL 语句表示为 : TRANSFORM Avg([成 绩 ].分数 ) AS 分数之平均值 SELECT [成 绩 ].班 级 FROM [成 绩 ]GROUP BY [成 绩 ].班级 PIVOT [成 绩 ].课号
其中 TRANSFORM 子句表示值 , 用来对数据进行 统计 , 此例中用于对分数字段求平均值 。 接下来的
TRANSFORM Count([成 绩 ].学号 ) AS 学号之计数 SELECT IIf(Mid([学号 ],5,3)=
GROUP BY IIf(Mid([学号 ],5,3)=
交叉表查询本身有其优越性 , 它能很方便地对数 据表中的原始数据 (也可以是多个表 , 表与表之间需要 建立表间关系 ) 进行分析和统计 , 使得人们可以从纷繁 复杂的数据中直接看到分析结果 , 但由于它自身存在 的局限性 , 使它在实际应用中不能直接得到人们所需 要的数据 。 单就从查询方面看 , 存在的问题主要有以下 两个方面 :
2.3.1所得结果不能输出
选择查询可以通过
解决的方法是 :将交叉表查询保存后 , 再以此为数 据源创建选择查询 。
2.3.2分析汇总的值不能有多个
在创建交叉表查询时 , 行标题可以有多个 , 但列标 题和值只能有一个 , 但在实际应用中 , 如果需要显示类 似图 1.1的结果 , 交叉表查询就无法实现 。
图 1.1多列显示数据
解决的方法是 :先创建多个交叉表查询 , 需要几列 就创建几个 , 要求这些交叉表查询中都有一个作为行 标题的字段 (如院系 ), 保存之后 , 再创建一个新的选择 查询 , 将所创建的交叉表查询作为数据源 , 并通过相同 字段建立表间关系 , 选择所有交叉表查询中的字段 , 按 需要排列 , 然后再将列名进行分别设置 , 如图 1.1中 , 将原本显示课号为
3、 结束语
交叉表查询是 Access 中的重要查询类型之一 , 帮 助人们对原始数据进行分析汇总 。 本文结合教学实践 , 对交叉表查询的建立及应用进行分析 , 并提出了具体 的解决方案 。
参考文献 :
[1]申石磊 , 季超 , 楚艳萍 .Access 程序设计 [M].北京 :中国科学技术 出版社 ,2009.
[2]章立民 .Access 2003-用 150个范例学查询 [M].北京 :电子工业 出版社 ,2006.
[3]柴国雄 .Access 编程中的交叉查询技巧 [J].计算机时代
,2007,(2). 175
范文四:练习-特殊选择查询、交叉表查询、操作查询
练习 特殊选择查询、交叉表查询、操作查询
实验目的:特殊选择查询、交叉表查询、操作查询的建立方 法。
把教学管理系统 .mdb 改名为教学管理系统 _xxx.mdb(xxx是你的名字 ) 。
1. 特殊选择查询
①重复项查询(海量记录中查找少量重复记录)
在“教学管理系统”数据库中查找学生表中同名同姓的学生情况。要求显示相同姓名的所 有字段,并保存查询为“ 查询同名同姓的学生记录 ” 。
操作提示:
数据库窗口中查询栏目下,单击“新建”按钮
②不匹配项查询(查找主表中存在但从表中不存在的记录)
在 “教学管理系统” 数据库中查找没有学生选修的开课计划, 其中开课计划表是主表, 选课 成绩表是从表,保存查询为“ 未开课的课程 ” 。
2、在设计视图下创建交叉表查询
创建一个用于查看 “ 学生成绩的交叉表查询 ” , 要求学生姓名作为行标题, 课程名称作为列 标题,值为总评成绩字段,并对每个学生的各科总评成绩求平均值。
操作提示:
在数据库窗口的查询栏目中,双击“在设计视图中创建查询” ;
在“显示表”对话框中加入“学生表” 、 “课程表” 、 “选课成绩表” 、 “开课计划表” ,然后在 查询的设计网格中加入相关的三个字段:姓名、课程名称、总评成绩;
单击“查询” — 》 “交叉表查询”菜单项,依次指定“行标题” (两个行标题) 、 “列标题” 、 “值” ,注意总计项。
思考 :用交叉表查询向导怎么完成?
3、创建操作查询 ——批量修改数据表中的数据 (职员管理 .mdb ,按下列题号顺序做练习) 原样复制“职工情况表” 、 “图书表” 、 “借阅登记表” ,并把 3个复件改名为:“ 1职工情况 表” 、 “ 1图书表” 、 “ 1借阅登记表” 。
① 打开“职工情况表”和“ 1职工情况表” ,令其分别按“基本工资”升序排序。
创建一个 “ 1更新表查询” ,使“ 1职工情况表”中基本工资不大于 300元的职工基本工 资增加为原来的 1.6倍;
运行“ 1更新表查询”后,打开“ 1职工情况表”和“职工情况”两个表,观察更新前 后记录内容(注意:基本工资 字段)的变化情况?
② 创建一个 “ 1生成科技图书借出表查询” ,用于产生一个 新的数据表 :“ 1科技图书借出 表” ,包含读者(先用“姓名”字段,再改成“读者” ) 、书名、作者、出版社、类别、借阅日 期、还书日期等字段。退出并保存此查询。
运行这个查询,然后打开‘表’对象,查看是否已经生成了。
③ 创建一个 追加文学书查询 :向“ 1科技图书借出表”追加“借阅图书”表中的全部图书 中,印数不小于 14000的文学书的记录。
打开 “ 1科技图书借出表” , 查看追加文学书后的情况。
④ 创建一个 “ 1删除未还书读者记录的查询” ,删除“ 1科技图书借出表”中“还书日期” 字段内容为空值的记录。
打开 “ 1科技图书借出表” , 查看删除‘无借阅日期的记录’后的情况。
范文五:实验六-交叉表和操作查询
实验六 查询
【 实验目的 】
1. 利用查询设计视图完成交叉表查询。
2. 利用查询设计视图掌握操作查询和参数查询。
【 实验内容 】
试根据”学生成绩图书信息”数据库中的各表 , 按以下要求完成设计 :
一.选择查询—参数查询
(1)以”读者”、”借书登记”和“图书”表为数据源 , 创建一个名为“按图书 名查询” 的 参数查询 , 根据用户输入的书名查询该书的借阅情况, 包括借书证号、 姓名、书名、作者、借书日期和还书日期。查询结果如图所示。
(2)以“学生” ,”课程”和“成绩”表为数据源创建一个名为“按课程查询” 的 参数查询 , 根据用户输入的课程名称进行成绩查询, 要求显示成绩及格的同学 的“学号” , “姓名” , “课程名称”和“成绩”字段。查询结果如图所示。
二.交叉表查询
(3) 在设计视图中 , 以”课程”、 ”教材”表为数据源创建一个名为 “各课程教 材统计” 的 交叉查询 , 统计出每门课程所选教材的数量 . 选择”课程名称”字段作 为行标题的字段 , 选择”教材名称”作为列标题的字段 , 教材”数量”作为统计 项 . 查询结果如图所示。查询结果如图所示。
(4)在设计视图中 , 以”教材”表为数据源创建一个名为“ 22”的 交叉查询 , 以各 出版社的所售教材的总额 (数量 *单价 ) 作为统计项 . 选择出”出版社”字段作为
行标题的字段 , 选择”教材名称”作为列标题的字段 , 数量 *单价作为统计项 . 查 询结果如图所示。查询结果如图所示。
三.操作查询 --追加查询,更新查询,删除查询,生成表查询
(5)以”读者” 和”借书登记”表为数据源 , 创建一个名为“生成部门借书情 况”的 生成表查询 ,将“法律系”和“英语系”两个部门的借书情况保存到一个 新表中。新表中字段包括“借书证号” 、 “姓名” 、 “部门” 、 “书号” ,生成的新表 名称为“ 部门借书登记 ” 。
生成的新表“ 部门借书登记 ”结果如图所示
(6)以”读者”和“借书登记”表为数据源,创建一个名为“添加部门借书情 况”的 追加查询 ,将“人事处”读者的借书情况追加到表“部门借书登记”中, “部门借书登记”表中字段包括“借书证号” 、 “姓名” 、 “部门” 、 “书号” 。
表“ 部门借书登记 ”追加记录后结果如图所示
(7) 将 “读者” 表复制一份, 复制后的表名为 “读者 copy” , 然后以”读者 copy ” 表为数据源,创建一个名为“更改部门”的 更新查询 ,将“读者 copy”表中部 门为“人事处”的字段值改为“教务处” 。
“读者 copy”表更新后结果如图所示
(8)以“部门借书登记”表为数据源,创建一个名为“删除部门借书情况”的 删除查询 ,将部门为“英语系”读者的借书情况从“部门借书登记”表中删除。
“部门借书登记”表删除记录后结果如图所示
四.选择查询(复习)
1) 以“读者” 、 “借书登记” 、 “图书”表为数据源,创建一个名为“ 2009年借书 情况”的查询,查询 2009年的借书情况,包括借书证号、姓名、部门、书 名和借书日期,并按借书日期降序排序。查询结果如下:
2) 以“读者” 、 “借书登记” 、 “图书”表为数据源,创建一个名为“部门借阅情 况”的查询,查询借书证号为“ 522”开头的,书号为“ W2210”的借阅情况, 包含借书证号、姓名、书号、书名、借书日期。查询结果如下:
3) 以“成绩” 、 “课程”表为数据源,创建一个名为“课程成绩”的查询,按课 程名称统计各个课程学生成绩最高分、最低分、选课人数等数据。查询结果 的数据视图如下所示: