计算机信息处理数据的查询与修改.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机信息处理数据的查询与修改

1.无条件更新:更改表中所有行的指定列值 例7.将所有学生的年龄加1 UPDATE Student SET Sage = Sage + 1 2.有条件更新 更改表中满足条件的各行中指定列值 (1) 基于本表条件的更新 (2) 基于其它表的更新 (1) 基于本表条件的更新 例8.将学生95001的年龄改为22岁 UPDATE Student SET Sage = 22 WHERE Sno = ‘95001’ (2)基于其它表的更新 用子查询实现 用多表连接查询实现 例9.将计算机系全体学生的成绩置0 1. 用子查询实现 UPDATE SC SET Grade = 0 WHERE Sno IN (SELECT Sno FROM Student WHERE Sdept=’CS’) 2. 用多表连接查询实现 UPDATE SC SET Grade = 0 FROM SC JOIN Student ON SC.Sno = Student.Sno WHERE Sdept=’CS’ 例1 查询与“刘晨”在同一个系学习的学生 SELECT Sno, Sname, Sdept FROM Student WHERE Sdept IN (SELECT Sdept FROM Student WHERE Sname=‘刘晨’) and Sname ! = ‘刘晨’ SELECT S1.Sno, S1.Sname, S1.Sdept FROM Student S1 JOIN Student S2 ON S1.Sdept = S2.Sdept AND WHERE S2.Sname = ‘刘晨’ and S1. Sname ! = ‘刘晨’ 等价于: 例2 查询成绩为‘A’的学生的学号、姓名 SELECT Sno, Sname FROM Student WHERE Sno IN ( SELECT DISTINCT Sno FROM SC WHERE Grade = ‘A’) 等价于: SELECT S. Sno, Sname FROM Student S JOIN SC ON S.Sno = SC.Sno WHERE Grade = ‘A’ 例3.查询选修了课程名“信息系统”的学生的学号、姓名 SELECT Sno, Sname FROM Student WHERE Sno IN ( SELECT Sno FROM SC WHERE Cno IN  --可换为= (SELECT Cno FROM Course WHERE Cname = ‘数据库基础’) ) (1) (2) (3) 嵌套查询 二.带有比较运算符的子查询 二.带有比较运算符的子查询 带比较运算符的子查询指父查询与子查询之间用比较运算符连接, 当用户能确切知道内层查询返回的是单值时,可用、、=、=、=、运算符 例1.查询与“刘晨”在同一个系学习的学生 当知道一个学生只在一个系学习时,即子查询只返回一个结果时,可用比较运算符 SELECT Sno, Sname, Sdept FROM Student WHERE Sdept = ( SELECT Sdept FROM Student WHERE Sname = ‘刘晨’) 例2. 查询‘c01’课程考试成绩最高的学生的姓名 SELECT Sname FROM Student WHERE Sno IN ( SELECT Sno FROM SC WHERE Grade = ( SELECT MAX(Grade) FROM SC WHERE Cno = ‘C01’) and cno = ‘c01’) 相关子查询 相关子查询在子查询的Where子句中关联外部表 经常用EXISTS( )函数引导 EXISTS代表存在量词,带EXISTS函数的子查询不返回结果数据,只产生逻辑真值和逻辑假值。 例1.查询选修了c01号课程的学生姓名 SELECT Sname FROM Student WHERE EXISTS (SELECT * FROM SC WHERE Sno = Student.Sno

文档评论(0)

sunshaoying + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档