- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理第三章.ppt
第三章 关系数据库标准语言SQL语言;§3.1 SQL概述 ;1986年美国国家标准局ANSI的数据库委员会X3H2批准并公布了SQL标准文本(SQL-86)。
1987年国际标准化组织ISO 把SQL-86采纳为国际标准。
1989年ISO颁步了增强完整性特征的SQL-89标准。
1992年ISO公布了修改扩充后的SQL-92(即SQL2)标准。
目前最新标准为SQL-99(即SQL3)。;二、SQL数据库的体系结构 ;三、SQL的组成(分类) ;四、SQL的特点 ;§3.2 SQL语言的基本概念 ;二、函数 ;三、运算符;四、查询表结构 ;§3.3 查询语句 ;SELECT…FROM常用语句执行过程
SELECT… ⑤ 投影
FROM… ① TABLE→内存
WHERE… ② 选取元组
GROUP… ③ 分组
HAVING… ④ 选择分组
[{UNION|… } ⑥ 查徇结果的集 合运算
SELECT… ] ①~⑤
ORDER BY…… ⑦ 排序输出;二、单表查询;选??表中的行
1) 消除重复行: DISTINCT (缺省为ALL)
?例: 求选修了课程的学生号
SELECT DISTINCT S#
FROM S;
2) 选满足一定条件的行:
用WHERE子句实现
例:求计算机系年龄小于19的姓名及年龄
SELECT SN, SA
FROM S
WHERE SD=’CS’ AND SA19;
;例: 求年龄在18~22 (含18, 22)之间的学生名及年龄(或不在18~22之间)
SELECT SN, SA
FROM S
WHERE SA BETWEEN 18 AND 22;
(WHERE SA=18 AND SA=22);
(WHERE SA NOT BETWEEW 18 AND 22);
(WHERE SA18 OR SA22);
;3)查询条件来自集合:
用IN or NOT IN
例: 求信息工程系、计算机系、数学系的系名、学生名 (或不是这些系的学生)
SELECT SD DEPT, SN NAME FROM S
WHERE SD IN (‘IE’, ‘CS’, ‘MA’);
(WHERE SD=‘IE’ OR SD=‘CS’ OR SD=‘MA’)
(WHERE SD NOT IN (‘IE’, ‘CS’, ‘MA’);
(WHERE SD!=‘IE’ AND SD!=‘CS’ AND SD!=‘MA’);4) 字符匹配:
格式:
[NOT] LIKE ‘匹配串’ [ESCAPE ‘换码字符’]
%: 表示任意长度(≥0的任意字符
__: 表示单个的任意字符
ESCAPE ‘换码字符’ :
匹配串中‘换码字符’之后的字(%,__),被定义为普通字符(不作通配符用);例1:求课程名中有’数据库’的课程记录
SELECT *
FROM C
WHERE CN LIKE ‘%数据库%’;
例2:求倒数第三、四个汉字为’系统’的课程名
SELECT CN
FROM C
WHERE CN LIKE ‘%系统____’;;
例3:求以‘DATA_BASE’开头且倒数第五个字符为’S’的课程名
SELECT CN
FROM C
WHERE CN LIKE
‘DATA\_BASE%S____’ ESCAPE’\’;
;3、分组与组函数:
组函数的使用格式:
COUNT([DISTINCT|ALL] *|列名)
SUM([DISTINCT|ALL] 列名)
AVG([DISTINCT|ALL] 列名)
MAX([DISTINCT|ALL] 列名)
MIN([DISTINCT|ALL] 列名)
;组函数可用于SELECT子句中的目标列表中,或在HAVING子句的分组表达式中用作条件。
分组用GROUP BY对一列或若干列的值分组,同值的分为一组。
对分出的每一组用HAVING进行筛选,筛选条件要用到组函数。
;例1:求选修了课程的学生人数
SELECT COUNT(DISTINCT S#)
FROM SC;
?
例2:求选修各门课的人数及平均成绩
SELEC
文档评论(0)