- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理及应用教案第四章
教 案
授课时间 第四周 周一12节、周三78节 授课教师 杨清波 授课班级:信息14-12 授课内容概要 4.1 数据查询功能
4.2 数据更改功能
目的要求 掌握SQL语言的数据查询功能,掌握SQL语言的数据更改功能。 重点 SQL语言的数据查询功能 难点 SQL语言的数据查询功能 作业布置 课后题:3、6、9、12、21、24 本章(节)参考书 《数据库系统概论(第4版)2006-05-01
《数据库原理与应用教程(第三版)》,何玉洁等,机械工业出版社,2012-09 教学方法 主要教具 多媒体、板书结合 备注
授 课 过 程 及 内 容 备 注 SQL数据查询语句的基本格式
SELECT 目标列名序列 --需要哪些列
FROM 数据源 --来自于哪些表
[WHERE 检索条件] --根据什么条件
[GROUP BY 分组依据列]
[HAVING 组提取条件]
[ORDER BY 排序依据列]
查询表中用户感兴趣的部分属性列
例1.查询全体学生的学号与姓名。
SELECT Sno, Sname FROM Student
例2.查询全体学生的姓名、学号、所在系
SELECT Sname, Sno, Sdept FROM Student
例3.查询全体学生的记录
SELECT * FROM Student
例4.查询全体学生的姓名及其出生年份。
SELECT Sname, 2010 - Sage FROM Student
选择表中若干元组
例6.查询选修了课程的学生的学号,去掉重复的远组
SELECT DISTINCT Sno FROM SC
例7.查询计算机系全体学生的姓名。
SELECT Sname FROM Student WHERE Sdept = 计算机系
例9.查询考试成绩有不及格的学生的学号
SELECT DISTINCT Sno FROM SC WHERE Grade 60
例10.查询年龄在20~23岁之间的学生的姓名、所在系和年龄。
SELECT Sname, Sdept, Sage FROM Student WHERE Sage BETWEEN 20 AND 23
例12.查询信息系、数学系和计算机系学生的姓名和性别。
SELECT Sname, Ssex FROM Student WHERE Sdept IN (信息系, 数学系, 计算机系)
例16.查询名字中第2个字为‘小’或‘大’的学生的姓名和学号。
SELECT Sname, Sno FROM Student WHERE Sname LIKE _[小大]%
例20.查询没有考试成绩的学生的学号和相应的课程号。
SELECT Sno, Cno FROM SC WHERE Grade IS NULL
例21.查询计算机系年龄在20岁以下的学生姓名。
SELECT Sname FROM Student WHERE Sdept = ‘计算机系 AND Sage 20
对查询结果进行排序
例23.查询选修了‘c02’号课程的学生的学号及其成绩,查询结果按成绩降序排列。
SELECT Sno, Grade FROM SC WHERE Cno=c02 ORDER BY Grade DESC
使用计算函数汇总数据
SQL提供的计算函数有:
COUNT( * ):统计表中元组个数;
COUNT([DISTINCT] 列名 ):统计本列列值个数;
SUM([DISTINCT] 列名 ):计算列值总和;
AVG([DISTINCT] 列名 ):计算列值平均值;
MAX([DISTINCT] 列名 ):求列值最大值;
MIN([DISTINCT] 列名 ):求列值最小值。
上述函数中除COUNT(*)外,其他函数在计算过程中均忽略NULL值。
例26.统计选修了课程的学生的人数。
SELECT COUNT (DISTINCT Sno) FROM SC
例27 .计算9512101号学生的考试总成绩之和。
SELECT SUM(Grade) FROM SC WHERE Sno = 9512101
对查询结果进行分组计算
作用:可以控制计算的级别:对全表还是对一组。
目的:细化计算函数的作用对象。
分组语句的一般形式:
[GROUP BY 分组条件]
[HAVING 组过滤条件]
例31.查询每名学生的选课门数和平均成绩。
SELECT Sno as 学号, COUNT(*) as 选课门数, AVG(Grade) as 平均成绩 FROM SC GROUP BY Sno
例32.
文档评论(0)