为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

查询数据库

2012-02-17 33页 doc 1008KB 419阅读

用户头像

is_119768

暂无简介

举报
查询数据库第三章 查询 本章主要学习查询的基本操作,包括查询的概念、查询的创建和使用。 3.1 认识查询 3.1.1 查询的功能 查询是对数据库表中的数据进行查找,同时产生一个类似于表的结果,在 Access 中可以方便地创建查询,在创建查询的过程中定义要查询的内容和准则, Access 将根据定义的内容和准则在数据库表中搜索符合条件的记录。利用查询可以实现许多功能。 1. 选择字段 在查询中,可以只选择表中的部分字段如建立一个查询,只显示 “ 教师 ” 表中每名教师的姓名、性别、工作时间和系别。利用查询这一功能,可以通过...
查询数据库
第三章 查询 本章主要学习查询的基本操作,包括查询的概念、查询的创建和使用。 3.1 认识查询 3.1.1 查询的功能 查询是对数据库中的数据进行查找,同时产生一个类似于表的结果,在 Access 中可以方便地创建查询,在创建查询的过程中定义要查询的内容和准则, Access 将根据定义的内容和准则在数据库表中搜索符合条件的记录。利用查询可以实现许多功能。 1. 选择字段 在查询中,可以只选择表中的部分字段如建立一个查询,只显示 “ 教师 ” 表中每名教师的姓名、性别、工作时间和系别。利用查询这一功能,可以通过选择一个表中的不同字段生成所需的多个表。 2. 选择记录 根据指定的条件查找所需的记录,并显示找到的记录。如建立一个查询,只显示 “ 教师 ” 表中 1992 年参加工作的男教师。 3. 编辑记录 编辑记录主要包括添加记录、修改记录和删除记录等。在 Access 中,可以利用查询添加、修改和删除表中的记录。如将 “ 计算机实用软件 ” 不及格的学生从 “ 学生 ” 表中删除。 4. 实现计算 查询不仅可以找到满足条件的记录,而且还可以在建立查询的过程中进行各种统计计算,如计算机每门课程的平均成绩。另外还可以建立一个计算字段,利用计算字段保存计算的结果。 5. 建立新表 利用查询得到的结果可以建立一个新表。如将 “ 计算机实用软件 ” 成绩在 90 分以上的学生找出来并存放在一个新表中。 6. 建立基于查询的报表和窗体 为了从一个或多个表中选择合适的数据显示在报表或窗体中,用户可以先建立一个查询,然后将查询的结果作为报表或窗体的数据源。每次打印报表或窗体时,该查询就从它的基表中检索出符合条件的最新记录。这样也提高了报表或窗体的使用效果。 3.1.2 查询的类型 1.选择查询   选择查询是最常见的查询类型,它根据指定的查询准则从一个或多个表中检索数据。也可以使用选择查询来对记录进行分组,并且对记录作总计、计数、平均值以及其他类型的总和的计算。 2.交叉表查询   交叉表查询显示来源于表中某个字段的值(合计、计数以及平均),并将它们分组,一组列在数据表的左侧,一组列在数据表的上部,在数据表行与列的交叉处显示表中某字段统计值。 3.参数查询   参数查询是一种利用对话框来提示用户输入准则的查询。 4.操作查询   操作查询与选择查询类似,都是有用户指定查询记录的条件,但选择查询是检查符合特定条件的一组记录,而操作查询是在一次查询操作中对所得结果进行编辑等操作。操作查询共有四种类型:删除、更新、追加与生成表。 · 删除查询: 从一个或多个表中删除一组记录。 · 更新查询: 对一个或多个表中的一组记录作全局的更改。 · 追加查询: 从一个或多个表将一组记录追加到一个或多个表的尾部。 · 生成表查询:生成表查询是利用一个或多个表中的全部或部分数据新建表。 5.SQL 查询   SQL 查询是用户使用 SQL 语句创建的查询。 SQL 查询主要包括:联合查询、传递查询、数据定义查询和子查询。 · 联合查询 : 这种类型的查询将来自一个或多个表或查询的字段(列)组合为查询结果中的一个字段或列。 · 传递查询: 这种类型的查询使用服务器能接受的命令直接将命令发送到 ODBC 数据库。 · 数据定义查询: 这种类型的查询可以创建、删除、更改表或创建数据库中的索引。 · 子查询: 这种类型的查询包含另一个选择查询或操作查询中的 SQL SELECT 语句。可以在查询网格的 “ 字段 ” 行输入这些语句来定义新字段,或在 “ 准则 ” 行来定义字段的准则。 3.1.3 建立查询的准则 1 .准则中的运算符 关系运算符: = (等于)、 <> (不等于)、 > (大于)、 < (小于)、 <= (大于等于)、 >= (小于等于)。 逻辑运算符: Not (非)、 And (且)、 Or (或)。 特殊运算符: In 如:年龄 In ( 17 , 18 , 19 )          Between 如:年龄 Between 17 and 20          Like 如:姓名 Like “ 王 %”          Is Null          Is Not Null 2. 准则中的函数 数值函数 : Abs() (绝对值)、 Int() (取整)、 Sqr() (平方根)、 Sgn() (符号)。 字符函数 : Space() (空格字符串)、 String() (重复字符串)、 Left() (取左串)、 Right() (取右串)、 Len() (长度)、 Ltrim() (去前导空格)、 Rtrim() (去后导空格)、 Trim() (去前后空格)、 Mid() (取中串)。 日期函数: Day() (日)、 Month() (月)、 Year() (年)、 Weekday() (周)、 Hour() (小时)、 date() (日期)。 统计函数: Sum() (汇总)、 Avg() (平均)、 Count() (记数)、 Max() (最大值)、 Min() (最小值)。 字段名 实     例 性  别 "男" 职  称 "教授" or "副教授" 姓  名 Like "王*" 姓  名 Like "王?" 姓  名 Left([姓名],1)= "王" 姓  名 Len([姓名])<=3 课程名称 Like "[A-Z]*" 姓  名 Not "王军” 姓  名 Is Null 姓  名 Is Not Null 联系电话 "" 简  历 Rightt([简历],2)= "顺义" 学生编号 Mid([学生编号],3,2)= "03" 工作时间 Between #92-01-01# And #92-12-31# 工作时间 标准
偏差值。 数字、日期 / 时间、货币和自动编号 Var 字段的方差值。 数字、日期 / 时间、货币和自动编号 选定 用于 Group By 定义要执行计算的组。例如,如果要按类别显示销售额总计,请对 “ 类别名称 ” 字段选定 Group By 。 Expression 创建表达式中包含合计函数的计算字段。通常在表达式中使用多个函数时,将创建计算字段。 Where 指定不用于分组的字段准则。如果选定这个字段选项, Microsoft Access 将清除 “ 显示 ” 复选框,隐藏查询结果中的这个字段。 Last 求在表或查询中最后一条记录的字段值 First 求在表或查询中第一条记录的字段值 3.3.2 分组总计查询 在“设计”视图中将用于分组的字段的“总计”设置成 Group By 。 例: 统计各类职称的教师人数。 ( 1 )在“教学管理”数据库窗口中,单击“查询”对象,然后双击“在设计视图中创建查询”,出现查询“设计”视图,并显示一个“显示表”对话框,如图 3-6 所示。 ( 2 )选择“表”选项卡,添加“教师”表,关闭“显示表”对话框。 ( 3 )将“教师编号”字段和“职称”字段添加到“设计网格”的字段行中。 ( 4 )单击“视图”菜单中的“合计”命令,或单击工具栏上的“合计”按钮,这时在“设计网格”中插入一个“合计”行,并自动将“教师编号”字段的“总计”单元设置成 Group by 。 ( 5 )“职称”的“总计”行设为“ Group By ”。 ( 6 )“教师编号”的“总计”设为 Count 。如图 3-16 所示。 ( 7 )单击工具栏上的“保存”按钮,存储查询为“ 88 年参加工作的教师人数”。 ( 8 )单击工具栏上的“视图”按钮,或单击工具栏上的“运行”按钮,切换到“数据表”视图。可以看到查询结果,如图 3-17 所示。 3.3.3 添加计算字段 计算字段是指根据一个或多个字段并使用表达式建立的新字段。它显示一个表达式的结果而不是所存储的数据。每当表达式中的某个值改变时,该值都重新计算。 例:查询每个学生的“入学日”。 ( 1 )在“教学管理”数据库窗口中,单击“查询”对象,然后双击“在设计视图中创建查询”,出现查询“设计”视图,并显示一个“显示表”对话框。 ( 2 )选择“表”选项卡,添加“学生”表,关闭“显示表”对话框。 ( 3 )将“学生编号”、“姓名”字段添加到“设计网格”的字段行中。 ( 4 )在字段行的第四列输入“入学日:Day([ 入学日期 ]) ”,如图 3-18 所示。 ( 5 )单击工具栏上的“保存”按钮,保存为“学生入学日查询”。 3.4 创建交叉表查询 3.4.1 认识交叉表查询 将来源于某个表中的字段进行分组,一组列在数据表的左侧,一组列在数据表的上部,在行与列的交叉处显示表中某个字段的各种计算值。如图 3-20 ,就是一个交叉表查询。 3.4.2 创建交叉表查询 1.使用“查询向导” 例:查询每班男女生人数。 ( 1 )在“教学管理”数据库窗口中,单击“查询”对象,然后单击“新建”按钮,出现“新建查询”对话框,如图 3-21 所示。 (2)双击“交叉表查询向导”,出现“交叉表查询向导”第一个对话框,如图 3-22 所示。 (3)交叉查询的数据源可以是表,也可以是查询。在此选择查询,并选“学生情况查询”,如图 3-23 所示。 (4)单击“下一步”按钮,出现“交叉表查询向导”第二个对话框,如图 3-24 所示。选择“班级”的值作为行标题。 (5)单击“下一步”按钮,出现“交叉表查询向导”第三个对话框,如图 3-25 所示。选择“性别”的值作为列标题。 ( 6 )单击“下一步”按钮,出现“交叉表查询向导”第四个对话框,如图 3-26 所示。选择交叉处计算的数据为“姓名”计数。 ( 7 )单击“下一步”按钮,出现“交叉表查询向导”最后一个对话框,如图 3-27 所示。输入查询名称。单击“完成”按钮。 2 .使用“设计”视图 ( 1 )在“教学管理”数据库窗口中,单击“查询”对象,然后双击“在设计视图中创建查询”,出现查询“设计”视图,并显示一个“显示表”对话框。 ( 2 )选择“表”选项卡,添加“学生”表、“课程”表和“选课成绩”表,关闭“显示表”对话框。 ( 3 )双击“学生”列表中的“姓名”字段,将其放到“字段”行的第 1 列,然后双击“课程”列表中的“课程名称”字段和“选课成绩”表的“成绩”字段,将它们分别放到“字段”行的第 2 列和第 3 列。 ( 4 )单击工具栏的“查询类型”按钮右侧的向下箭头按钮,然后从下拉列表中选择“交叉表查询”选项。 ( 5 )设置“姓名”、“课程名称”、“成绩”列的总计行分别为“ Group by ”,“ Group by ”和“ First ”; 交叉表行分别为“行标题”,“列标题”及“值”。如图 3-28 所示。 ( 6 )单击工具栏上的“保存”按钮,保存并命名为“学生课程成绩交叉表”。 ( 7 )运行结果如图 3-29 所示。 3.5 创建参数查询 参数查询利用对话框,提示用户输入参数,并检查符合输入参数的记录或值。 3.5.1 单参数查询 创建单参数查询,就是在字段中指定一个参数,在执行参数查询时,用户输入一个参数值。 例: 按姓名查询学生的成绩。 ( 1 )以“设计”视图打开“学生选课成绩”查询。 ( 2 )在“姓名”字段的“准则”单元输入“ [ 请输入学生姓名: ] ”,如图 3-30 所示。 ( 3 )单击工具栏上的“运行”按钮,这时屏幕上会出现“输入参数值”对话框,如图 3-31 所示。 ( 4 )输入“刘力”,单击“确定”按钮,查询结果如图 3-32 所示。 ( 5 )选择“文件”菜单中的“另存为”,保存名为“学生选课成绩参数查询”。 3.5.2 多参数查询 基本方法类似。只需在多个字段的准则栏中输入提示文本。 一、填空题 1、根据指定的查询准则从一个或多个的表中检索数据称为_________________。 2、SQL 查询是用户使用 SQL 语句创建的查询。 SQL 查询主要包括:________________ 。 3、“新建查询”对话框中有________________种建立查询的方式。 4、使用设计视图创建查询,可以在数据库窗口中,单击“查询”对象,然后双击________________。 5、创建带条件的查询这种查询需要通过“设计”视图来建立,在“设计”视图的________________行输入查询条件。 6、统计 1998 年参加工作的教师人数,使用 Between 操作符,条件表达式为:________________。 7、在“设计”视图中将用于分组的字段的“总计”设置成________________。 8、________________是指根据一个或多个字段并使用表达式建立的新字段。它显示一个表达式的结果而不是所存储的数据。 9、交叉表查询将来源于某个表中的字段进行分组,________________ ,在行与列的交叉处显示表中某个字段的个种计算值。 10、创建按姓名查询学生的成绩单参数查询,提示信息为“请输入学生姓名”,可以在“姓名”字段的“准则”单元输入________________。 二、选择题 1 .以下叙述中, ____是正确的。 A. 在数据较多、较复杂的情况下使用筛选比使用查询的效果好 B.查询只从一个表中选择数据.而筛选可以从多个表中获取数据 C. 通过筛选形成的数据表,可以提供给查询、视图和打印使用 D.查询可将结果保存起来,供下次使用 2 .利用对话框提示用户输入参数的查询过程称为( )。 A .选择查询   B .参数查询   C .操作查询   D .SQL 查询 3 .以下叙述中,( )是错误的。 A .查询是从数据库的表中筛选出符合条件的记录,构成 — 个新的数据集合 B .查询的种类有:选择查询、参数查询、交叉查询、操作查询和 SQL 查询 C .创建复杂的查询不能使用查询向导 D .可以使用函数、逻辑运算符、关系运算符创建复杂的查询 4 .查询中的 “ 英语精读 ” 的列记录的平均值,和班级 =“ 英语 A 班 ” 的条件应写在设计视图中( )行。  A. 总计   B. 字段   C. 准则   D. 显示   5 .筛选图书编号是 "01" 或 "02" 的记录,可以在准则中输入 ___________ 。(多选) A . "01"  or  "02"       B . not in ("01" , "02") C . in ("01" , "02")      D . not  ("01" and "02") 6 .查看工资表中长安商品公司实发工资为 2000 元以上(除 2000 元)人员的记录 , 表达式为 _________ 。 ( 多选 ) A. 部门 =" 长安商品公司 " AND  实发工资 >2000 B. 部门 =" 长安商品公司 " AND  实发工资 >=2000 C. 部门 = 长安商品公司  AND  实发工资 >=2000 D. 实发工资 >2000  AND  部门 =" 长安商品公司 " 7 . 内部计算函数 “Sum” 的意思是求所在字段内所有的值的 ______ 。   A. 和   B. 平均值   C. 最小值   D. 第一个值   8 . 内部计算函数 “Avg” 的意思是求所在字段内所有的值的 ______ 。 A. 和        B. 平均值     C. 最小值      D. 第一个值   9 . 在 SQL 查询 GROUP BY  语句用于 ____________ 。 A. 选择行条件       B. 对查询进行排序     C. 列表       D. 分组条件   10 .查看工资表中实发工资为 2000 元以上(除 2000 元)至 4000 元(除 4000 元)以下的人员记录 , 表达式为 ______ 。 A. 实发工资 >2000  OR    实发工资 <4000  B. 实发工资 >2000  AND   实发工资 <4000  C. 实发工资 >=2000 AND   实发工资 =<4000  D. 实发工资  (Between 2000 and 4000)  填空题 1.选择查询 2.联合查询、传递查询、数据定义查询和子查询 3.5种 4.“在设计视图中创建查询” 5.“准则” 6.Between #1998-1-1# and #1998-12-31#。 7.Group By。 8.计算字段 9.一组列在数据表的左侧,一组列在数据表的上部 10.“[请输入学生姓名:]” 选择题 D  B  C  C  AC  AD  A  B  D  B     主讲教师:杨树林  北京印刷学院副教授, 硕士研究生 任教经历:   1988-7 —— 2002-10  辽宁师范大学计算机系   2002-10 —— 2004- 现在  北京印刷学院计算机系,北大青鸟 ACCP 计算学院 成就:   硕士生研究生证   清华大学访问学者   全国多媒体教育软件大赛三等奖   在省部级以上刊物发表文章30余篇,出版专著4部,主持与市级以上科研项目6项   多年从事计算机教育,有正轨本科生的教育经历,也有 IT 培训的经历,教学经验丰富,专业知识扎实,熟悉常用软件的应用,有较强的科研能力。   辽宁省计算机学会理事   大连 CBE 及人工智能学会理事   全国计算机基础教育委员会会员  
/
本文档为【查询数据库】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索