版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库课件第四章查询第1页,课件共78页,创作于2023年2月2建立数据库的目的是更好地管理和使用其中的数据,获取有用的信息。4.1认识查询筛选/统计数据维护(增删改)第2页,课件共78页,创作于2023年2月34.1认识查询查询的要素:查询的内容(结果列)数据源:存放数据的表查询条件查询的结果往往也是一个数据记录的集合,即关系“李涛”的考试成绩?男女同学的人数?第3页,课件共78页,创作于2023年2月44.1认识查询ACCESS查询类型:选择查询操作查询(删除、追加、更新、生成表)交叉表查询参数查询SQL查询第4页,课件共78页,创作于2023年2月54.2选择查询ACCESS查询方法:使用查询向导使用查询设计器自定义查询步骤:1。添加数据源-表:菜单:“查询”-“显示表”2。选内容-字段3。填条件(可选)4。设置排序(可选)第5页,课件共78页,创作于2023年2月64.2选择查询数据源查询内容条件步骤:1。添加数据源-表:菜单:“查询”-“显示表”2。选内容-字段3。填条件(可选)4。设置排序(可选)第6页,课件共78页,创作于2023年2月74.2选择查询查询的三种视图:(见“视图”菜单)设计视图数据表视图SQL视图第7页,课件共78页,创作于2023年2月84.2选择查询设置查询条件:运算符算术运算符:+-*/关系运算符:>=<<=<>
逻辑运算符:andornot其他:Betweenandlikein第8页,课件共78页,创作于2023年2月94.2选择查询设置查询条件:一般条件(与上一章有效性规则中介绍的相同)多个准则:同行相与,异行相或使用标识符:[学生]使用函数(left/right/mid/year/month/date等)使用null(isnull/isnotnull)使用通配符(?*#[字符表]等)第9页,课件共78页,创作于2023年2月10示例1.选修“西方经济学”的学生第10页,课件共78页,创作于2023年2月11示例2.选修了课程的的学生(除“西方经济学”)第11页,课件共78页,创作于2023年2月12示例3.选修“西方经济学”的女学生第12页,课件共78页,创作于2023年2月13示例4.05级学生的成绩第13页,课件共78页,创作于2023年2月14示例5.没有邮箱的学生空值的概念空值(null),未定的值第14页,课件共78页,创作于2023年2月15示例6.姓“李”的学生第15页,课件共78页,创作于2023年2月164.2选择查询自定计算:观察“西方经济学”成绩加10分后的效果查询结果中的列不仅是字段,也可以是自定义的表达式点击生成器按钮输入表达式第16页,课件共78页,创作于2023年2月174.2选择查询统计查询:(点∑按钮出“总计”行)一般统计:求和sum计数count求平均值avg求最大值max求最小值min第17页,课件共78页,创作于2023年2月184.2选择查询统计所有学生的总分之和第18页,课件共78页,创作于2023年2月194.2选择查询统计女生人数非null字段均可第19页,课件共78页,创作于2023年2月204.2选择查询分组计算:Groupby各门课程的平均分、最高分、最低分第20页,课件共78页,创作于2023年2月214.2选择查询包含函数的自定义计算列:Expression各门课程的平均分加10分第21页,课件共78页,创作于2023年2月224.2选择查询在药品销售清单中,统计:1。总销售额2。每一天的总销售额3。平均每天的销售额4。所有业务员的销售排名5。若按销售额的5%提成,每个业务员提成第22页,课件共78页,创作于2023年2月234.2选择查询由多步实现的查询(例4-10)复杂的选择查询第23页,课件共78页,创作于2023年2月244.2选择查询带有子查询的选择查询(例4-31)复杂的选择查询第24页,课件共78页,创作于2023年2月254.3参数查询可在查询时给查询条件现赋值,如输入学生的姓名后查询该学生的成绩第25页,课件共78页,创作于2023年2月264.3参数查询可就任意成绩区间进行查询的参数查询第26页,课件共78页,创作于2023年2月274.4交叉表查询行标题列标题值学生表.姓名成绩表.课程名成绩表.成绩第27页,课件共78页,创作于2023年2月284.4交叉表查询使用向导先作出下图的选择查询,以此查询为数据源使用向导作出交叉表“新建”按钮,选“交叉表”向导第28页,课件共78页,创作于2023年2月294.4交叉表查询使用查询设计器行标题列标题值学生表.姓名成绩表.课程名成绩表.成绩第29页,课件共78页,创作于2023年2月304.4交叉表查询练习统计各班级男女人数第30页,课件共78页,创作于2023年2月314.4交叉表查询增加一个Where列,设置条件(见下图)设置交叉表的查询条件第31页,课件共78页,创作于2023年2月324.5操作查询追加删除更新生成表广义上,ACCESS查询还可实现对数据库的追加、删除、更新等维护工作见“查询”菜单第32页,课件共78页,创作于2023年2月334.5操作查询生成不及格学生名单…单击“查询”菜单,选“生成表查询”,输入新表名生成表第33页,课件共78页,创作于2023年2月344.5操作查询可将某张表中的数据追加到另一表中将符合条件的记录删除追加删除第34页,课件共78页,创作于2023年2月354.5操作查询更新可修改符合条件的记录将“C程序设计”的成绩加10分第35页,课件共78页,创作于2023年2月364.6重复、不匹配项查询重复项查询不匹配项查询使用向导还可创建第36页,课件共78页,创作于2023年2月374.7结构化查询语言SQLStructuredQueryLanguage结构化查询语言功能:数据的查询、定义、操纵、控制特点:转P32问题:是否有一种标准化语言能够实现对各种关系数据库的访问?第37页,课件共78页,创作于2023年2月382.点击这里转到SQL视图查询的SQL视图3.输入SQL命令.注意所有的标点均为半角符号1.单击”新建”选项卡上的“查询设计”按钮,进入查询设计器,关闭“显示表”窗口.4.单击”运行”按钮执行查询.第38页,课件共78页,创作于2023年2月394.7结构化查询语言SQL命令:SELECT~(找什么即结果列)FROM~(从哪儿)WHERE~(条件)1.简单查询无条件有条件第39页,课件共78页,创作于2023年2月404.7结构化查询语言SQL短语:DISTINCT和ALL:是否去掉重复的元组ORDERBY:对结果按指定的字段排序(DESC降,ASC升)BETWEENAND:(小在前,大在后)IN:(条件包含在其后面指定的集合中)LIKE:字符串模式匹配(使用通配符时必须加like)AS:指定查询结果的自定义别名Top:返回特定数目或百分比的记录(须有ORDERBY)第40页,课件共78页,创作于2023年2月41示例2.显示学生表“李红”的记录1.显示学生表中的学号、姓名和性别三个字段SELECT学号,姓名,性别FROM学生;SELECT学号,姓名,性别FROM学生WHERE姓名=“李红”;第41页,课件共78页,创作于2023年2月42示例4.显示授课表中所有教师的编号,每位教师只显示1次3.显示学生表所有团员(*代表所有字段)SELECT*FROM学生WHERE是否团员;SELECTdistinct教师编号FROM授课;第42页,课件共78页,创作于2023年2月43示例5.显示学生表所有记录,并按年龄从小到大排序SELECT*FROM学生ORDERby出生日期DESC;第43页,课件共78页,创作于2023年2月44示例6.显示成绩表中的成绩在70-80之间的记录SELECT*FROM成绩WHERE成绩BETWEEN70AND80ORDERby成绩DESC;第44页,课件共78页,创作于2023年2月45示例7.显示教师表中的“教授”和“副教授”。SELECT*FROM教师WHERE职称in(“教授”,”副教授”);第45页,课件共78页,创作于2023年2月46示例8.显示学生表所有姓“张”的学生SELECT*FROM学生WHERE姓名like“张*”;第46页,课件共78页,创作于2023年2月47示例9.显示学生的姓名和是否团员,并将“是否团员”显示为“政治面目”SELECT姓名,是否团员as政治面目FROM学生;第47页,课件共78页,创作于2023年2月48示例10.显示年龄最大的三位学生SELECTtop3*FROM学生ORDERBY出生日期;第48页,课件共78页,创作于2023年2月494.7结构化查询语言SQL1.联接查询(基于二个或二个以上表)①普通联接查询联接条件置于WHERE后当多个表的字段名相同时,应表名.字段名②多表的联接第49页,课件共78页,创作于2023年2月50示例11.显示学生的学号、姓名、课程号和成绩SELECT学生.学号,姓名,课程号,成绩FROM学生,成绩WHERE学生.学号=成绩.学号;第50页,课件共78页,创作于2023年2月51示例12.显示女学生的学号、姓名、课程号和成绩SELECT学生.学号,姓名,课程号,成绩FROM学生,成绩WHERE学生.学号=成绩.学号and性别=“女”;第51页,课件共78页,创作于2023年2月52示例13.显示学生的学号、姓名、课程名和成绩SELECT学生.学号,姓名,课程名,成绩FROM学生,成绩,课程WHERE学生.学号=成绩.学号and成绩.课程号=课程.课程号;第52页,课件共78页,创作于2023年2月534.7结构化查询语言SQL库函数:Count(计数)Sum(求和)Avg(求平均值)Max(求最大值)Min(求最小值)统计查询也可以利用SQL的库函数完成求和、求平均值等统计检索例:统计学生总数例:计算“C程序设计”的平均分例:求“李红”同学的总分第53页,课件共78页,创作于2023年2月54示例14.统计学生总数SELECTcount(*)as学生总数FROM学生;
第54页,课件共78页,创作于2023年2月55示例15.计算“C程序设计”的平均分SELECTavg(考试成绩)FROM课程,成绩WHERE课程.课程号=成绩.课程号and课程名=“C程序设计”;第55页,课件共78页,创作于2023年2月56示例16.求“黄群”同学的总分SELECTsum(考试成绩)FROM学生,成绩WHERE学生.学号=成绩.学号and姓名=“李红";公司2008年的图书总销售额?第56页,课件共78页,创作于2023年2月574.7结构化查询语言SQL4.分组查询先分组,再统计例:统计每位同学的总分统计2门以上课程不及格的学生名单GroupBy~说明按什么分组(Having<条件>)可对分组后各组记录设置筛选条件第57页,课件共78页,创作于2023年2月58示例17.统计每位同学的总分SELECT学号,sum(总评成绩)FROM成绩GROUPBY学号;各门课程的最高分/最低分/平均分?第58页,课件共78页,创作于2023年2月59示例18.统计2门以上课程不及格的学生名单SELECT学号,count(总评成绩)FROM成绩GROUPBY学号HAVINGcount(总评成绩)>=2;请找出错误!第59页,课件共78页,创作于2023年2月604.7结构化查询语言SQLSELECT~FROM~WHERE(SELECT~FROM~WHERE)
5.嵌套查询一个查询建立在另一个查询的基础上例:找出和李红同时上课的同学第60页,课件共78页,创作于2023年2月614.7结构化查询语言SQL5.嵌套查询思路:①先找出李红选修的课程号;(子查询)②再以子查询的结果为条件查找SELECT课程号FROM学生,成绩WHERE学生.学号=成绩.学号and姓名=“李红";SELECT学生.学号,姓名FROM学生,成绩WHERE学生.学号=成绩.学号and课程号ININ第61页,课件共78页,创作于2023年2月624.7结构化查询语言SQL5.嵌套查询例:找出没有选课的同学第62页,课件共78页,创作于2023年2月63示例19.找出和黄群同时上课的同学SELECT学生.学号,姓名FROM学生,成绩WHERE学生.学号=成绩.学号and课程号IN(SELECT课程号
FROM学生,成绩
WHERE学生.学号=成绩.学号and姓名=“李红");第63页,课件共78页,创作于2023年2月64示例20.找出没有选课的同学SELECT学生.学号,姓名FROM学生WHERE学号notIN(SELECT学号
FROM成绩);”西方经济学”超过该课程平均分的同学?第64页,课件共78页,创作于2023年2月65示例SELECT学生.学号,姓名,考试成绩FROM学生,成绩,课程WHERE学生.学号=成绩.学号and课程.课程代码=成绩.课程代码and课程名称="高等数学"and考试成绩>=(selectavg(考试成绩)from成绩,课程
where课程.课程代码=成绩.课程代码and课程名称="高等数学");也可以使用=,>,>=,<,<=等连接子查询21.”高等数学”超过该课程平均分的同学?第65页,课件共78页,创作于2023年2月664.7结构化查询语言SQL1.SQL定义功能①表的定义CreateTable表名(字段名1(类型),字段名2(类型),…)注:可用该命令完成第三章表设计器完成的所有功能。请创建”教室”表教室(教室编号,人数)第66页,课件共78页,创作于2023年2月674.7结构化查询语言SQL②表的删除DropTable表名③修改表结构AlterTable表名;Add/Alter~第67页,课件共78页,创作于2023年2月684.6结构化查询语言SQL2.SQL操纵功能①插入Insertinto表名(字段名1,字段名2,…)Values(表达式1,表达式2,…)将所在教室插入到”教室”表中第68页,课件共78页,创作于2023年2月694.6结构化查询语言SQL2.SQL操纵功能②更新Update表名set字段名=~Where~将”教室”表中本教室的人数更新为80第69页,课件共78页,创作于2023年2月704.6结构化查询语言SQL2.SQL操纵功能③删除Deletefrom表名Where~删除”教室”表中本教室的信息第70页,课件共78页,创作于2023年2月714.7结构化查询语言SQL小结:SQL功能命令动词数据查询SELECT数据定义CREATE/DROP/ALTER数据操纵IN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB 47498.2-2026眼科仪器基本要求和试验方法第2部分:光危害防护
- 厂界周边环境安全应急预案
- 果园开沟施肥机操作使用规范
- 劳动防护用品配备标准管理细则
- 经络疏通技法操作手册
- 术后患者营养支持方案
- 职业病危害防护设施验收规范
- 员工安全行为规范指引
- 新员工三级安全教育培训考核大纲
- 体检报告解读规范
- (新教材)2026年人教版三年级上册数学 第2课时 认识线段、射线、直线(2) 课件
- DB11∕T 509-2025 房屋建筑修缮工程定案和施工质量验收规程
- 2026湖北省气象部门事业单位招聘应届高校毕业生70人(第1号)(公共基础知识)综合能力测试题带答案解析
- 2025贵州茅台生物科技研发有限责任公司科技人才招聘12人笔试历年参考题库附带答案详解
- 2025年公安机关人民警察基本级执法资格考试试题(初级)附答案
- 矿产开采合作协议(2025年权威版)
- 储能电站三级安全教育课件
- 人工智能赋能家居智能家电市场分析报告
- 2025年中级注册安全工程师安全生产技术考试真题及答案详解
- 锂电池pack技术知识培训课件
- 2025年福建省能源石化集团有限责任公司春季社会招聘210人笔试参考题库附带答案详解
评论
0/150
提交评论