数据查询教学课件.ppt
《数据查询教学课件.ppt》由会员分享,可在线阅读,更多相关《数据查询教学课件.ppt(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据查询教学课件 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望一、概述 语句格式SELECT ALL|DISTINCT ,FROM,WHERE GROUP BY HAVING ORDER BY ASC|DESC ;An Introduction to Database System语句格式说明:SELECT子句:指定要显示的属性列FROM子句:指定查询对象(基本表或视图)WHERE子句:指定查询条件 GROUP BY子句:对查询结果按指定列的值分组,该属性列值相
2、等的元组为一个组。通常会在每组中作用集函数。HAVING短语:筛选出只有满足指定条件的组ORDER BY子句:对查询结果表按指定列值的升序或降序排序 An Introduction to Database System3.4 查 询 一、概述二、单表查询三、连接查询四、嵌套查询五、集合查询六、小结 An Introduction to Database System二、单表查询 1.选择表中的若干列2.选择表中的若干元组3.对查询结果排序4.使用集函数5.对查询结果分组 查询仅涉及一个表最简单的查询操作An Introduction to Database System1、查询指定列例1 查询
3、全体学生的学号与姓名。例2 查询全体学生的姓名、学号、所在系。SELECT Sno,SnameFROM Student;SELECT Sname,Sno,SdeptFROM Student;An Introduction to Database System2、查询全部列SELECT Sno,Sname,Ssex,Sage,Sdept FROM Student;例3 查询全体学生的详细记录。SELECT *FROM Student;或An Introduction to Database System3、查询经过计算的值 SELECT子句的为表达式算术表达式字符串常量函数列别名等 An Int
4、roduction to Database System查询经过计算的值例4 查询全体学生的姓名及其出生年份。SELECT Sname,2008-SageFROM Student;输出结果:Sname 2008-Sage -李勇 1986 刘晨 1987 王名 1988 张立 1987An Introduction to Database System查询经过计算的值例5 查询全体学生的姓名、出生年份和所在系,要求用小写字母表示所有系名。SELECT Sname,Year of Birth:,2008-Sage,LOWER(Sdept)FROM Student;An Introduction
5、to Database System例题(续)输出结果:Sname Year of Birth:2008-Sage LOWER(Sdept)-李勇 Year of Birth:1986 cs 刘晨 Year of Birth:1987 is 王名 Year of Birth:1988 ma 张立 Year of Birth:1987 is An Introduction to Database System例5.1 使用列别名改变查询结果的列标题输出结果:NAME BIRTH BIRTHDAY DEPARTMENT-李勇 Year of Birth:1986 cs 刘晨 Year of Bir
6、th:1987 is 王名 Year of Birth:1988 ma 张立 Year of Birth:1987 isSELECT Sname NAME,Year of Birth:BIRTH,2008-Sage BIRTHDAY,LOWER(Sdept)DEPARTMENTFROM Student;An Introduction to Database System二、选择表中的若干元组 消除取值重复的行查询满足条件的元组 An Introduction to Database System1.消除取值重复的行在SELECT子句中使用DISTINCT短语假设SC表中有下列数据 Sno Cn
7、o Grade -200215121 1 92 200215121 2 85 200215121 3 88 200215122 2 90 200215122 3 80An Introduction to Database SystemALL 与 DISTINCT 例6 查询选修了课程的学生学号。(1)SELECT Sno FROM SC;或(默认 ALL)SELECT ALL Sno FROM SC;结果:Sno -95001 95001 95001 95002 95002 An Introduction to Database System例题(续)(2)SELECT DISTINCT Sn
8、o FROM SC;结果:Sno -95001 95002 注意 DISTINCT短语的作用范围是所有目标列An Introduction to Database System2.查询满足条件的元组WHERE子句常用的查询条件子句常用的查询条件(1)比较大小(2)确定范围(3)确定集合(4)字符串匹配(5)涉及空值的查询(6)多重条件查询An Introduction to Database System(1)比较大小在WHERE子句的中使用比较运算符=,=,=,!=或,!,!,逻辑运算符NOT +比较运算符例8 查询所有年龄在20岁以下的学生姓名及其年龄。SELECT Sname,Sage
9、FROM Student WHERE Sage=20;An Introduction to Database System(2)确定范围使用谓词 BETWEEN AND NOT BETWEEN AND 例10 查询年龄在2023岁(包括20岁和23岁)之间的学生的姓名、系别和年龄。SELECT Sname,Sdept,SageFROM StudentWHERE Sage BETWEEN 20 AND 23;An Introduction to Database System例题(续)例11 查询年龄不在2023岁之间的学生姓名、系别和年龄。SELECT Sname,Sdept,SageFROM
10、 StudentWHERE Sage NOT BETWEEN 20 AND 23;An Introduction to Database System(3)确定集合使用谓词 IN(值表),NOT IN(值表)(值表):用逗号分隔的一组取值例12查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别。SELECT Sname,SsexFROM StudentWHERE Sdept IN(IS,MA,CS);An Introduction to Database System(3)确定集合例13查询既不是信息系、数学系,也不是计算机科学系的学生的姓名和性别。SELECT Snam
11、e,SsexFROM Student WHERE Sdept NOT IN(IS,MA,CS);An Introduction to Database System(4)字符串匹配 NOT LIKE ESCAPE :指定匹配模板 匹配模板:固定字符串或含通配符的字符串 当匹配模板为固定字符串时,可以用=运算符取代 LIKE 谓词 用!=或 运算符取代 NOT LIKE 谓词查找指定的属性列值与相匹配的元组An Introduction to Database System通配符w%(百分号)代表任意长度(长度可以为0)的字符串例:a%b表示以a开头,以b结尾的任意长度的字符串。如acb,add
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 查询 教学 课件
限制150内