- 1、本文档共164页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第三章关系数据库标准语言SQLSQL概述数据定义数据操纵数据查询数据控制视图
SQL概述vv
vv
数据定义(基本表)(件])注意:(1)不同表中相应属性列的类型、宽度要一致。(2)注意约束的作用。
例5:
例6:(Cpno)
例6:SnoChar(9),CnoChar(4),
lllll思考:
例.
P87例8,例9,例10注意:
例8:DATE
例9:
例10:
有限制rca无限制v例11:
数据操纵vvv
插入数据1.插入单个元组P例1,例2,例3115
例1:
例2:
例3:v或:
2.插入子查询结果子查询
例4:
修改数据ll
三种修改方式lllP例5117P例6117P例7117
例5:
例6:
例7:
删除数据––元组
三种删除方式lllP例8118P例9118P例10118
例8:
例9:例:
例11:
数据查询Select语句的一般格式SelectFromWhereOrderByGroupBy
Select后面的各选项含义:SelectAllDistinct字段名From
where:orderby:groupby:
查询分类v单表查询v连接查询v嵌套查询v
v单表查询是仅涉及一个表的查询,是一种最简单的查询操作选择表中的若干列选择表中的若干元组对查询结果排序使用集函数对查询结果分组
1.查询指定列[例1][例2]
2.查询全部列[例3]或
3.查询经过计算的值[例4]出生年份e,2000-SageFROMStudent;学生表:Student(Sno,Sname,输出结果?Ssex,Sage,Sdept)
[例5]输出结果?
4.使用TOP关键字lll
l例:l例:
5.使用列别名改变查询结果的列标题NAMEBIRTHDAYDEPARTMENTBIRTH
v单表查询是仅涉及一个表的查询,是一种最简单的查询操作选择表中的若干元组
1.消除取值重复的行
ALL与DISTINCT[例6]
l例:错误的写法正确的写法
2.查询满足条件的元组l
(1)比较大小lll
l[例8]或
(2)确定范围l[例10]
等价于
[例11]
等价于
(3)确定集合l[例12]
l等价于
[例13]
l等价于
(4)字符匹配llll
l%(百分号):ll_(下横线):l
1)匹配模板为固定字符串[例14]等价于:
2)匹配模板为含通配符的字符串[例15]
[例16]
[例18]
[例17]
3)使用换码字符将通配符转义为普通字符[例19]\ESCAPE\
[例20]\ESCAPE\
(5)涉及空值的查询ll[例21]
[例22]
(6)多重条件查询ll
[例23]
v单表查询是仅涉及一个表的查询,是一种最简单的查询操作组对查询结果排序
三、对查询结果排序ll
[例24]
[例25]
v单表查询是仅涉及一个表的查询,是一种最简单的查询操作组使用集函数
四、使用集函数lALLALLALLALL
??ALL
[例26][例27]注:
[例28][例29]
v单表查询是仅涉及一个表的查询,是一种最简单的查询操作组对查询结果分组
五、对查询结果分组l
[例30]COUNT(Sno)
lll
[例31]
[例32]
ll
连接条件连接谓词比运算llBETWEENAND
查询分类vv连接查询vv
v连接查询(多表查询)
ll多个给定的条件from
v连接查询复习:R∞S=?CE连接运算:即从行也从列上进行
R∞S=CE
R∞S=R.B=S.B
连接操作的执行过程
两表连接Student.Sno
多表连接
1.等值连接与非等值连接
非等值连接
2.自身连接l同一个表l为表指定两个别名
First表(Course表)
Second表(Course表)l
3.内连接与外连接(内连接)共享列值连接条件思考:?这两张表为什么可以进行连接??连接的条件应该是什么?内连接查询结果
l:表示内连接(可省略)selectfrominner]joinon连接条件:当两个表中的列名相同时,需加上表名修饰;否则,可省去表名。selectfromwhere表1.列名1=表2.列名2连接条件
uu为什么要加上表名前缀?而其它字段前不要?因学号在两个表中都有,所以需指明所属的表名。selectstudent.sno,sname,cno,gradefromstudent,scwherestudent.sno=sc.snoandgrade60
课堂练习:查询不及格学生的学号、课程号、成绩,该课程的学分、该课程的先修课。selectsno,course.cno,ccredit,spno,Gr
文档评论(0)