第3章SQL(习题).ppt

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

(1)用SQL语言创建SC表 CREATE TABLE SC (Sno CHAR(6) NOT NULL , Cno CHAR(3) NOT NULL , Grade INTEGER); SELECT Cno,Cname FROM Course WHERE Teacher=‘李文’; 学生Student(Sno,Sname,Sex,Age) 课程Course(Cno,Cname,Teacher) 学习SC(Sno,Cno,Grade) (2)检索李文老师所授课程的课程号和课程名 (3)检索年龄大于20岁的男同学的学号和姓名 SELECT Sno,Sname FROM Student WHERE (Age20)AND(Sex=‘m’); * (4)检索至少选修两门课程的学生学号 SELECT Sno FROM Sc GROUP BY Sno HAVING COUNT(Cno)=2; (5)统计成绩为空值的学生人数 SELECT COUNT(SNO)FROM Sc WHERE Grade is NULL; (6)统计有学生选课的课程门数 SELECT COUNT(DISTINCT CNO) FROM SC; * (7)检索姓名以王打头的所有学生的姓名和年龄 SELECT Sname,Age FROM Student where Sname LIKE ‘王%’; (8)要在学生表中新增加一列所在“Sdept” ALTER TABLE Student ADD Sdept char(10); (10)从数据库中删除表Student DROP TABLE Student ; (9)为学生表Sno列建立索引,名字SNOINDEX CREATE INDEX SNOINDEX ON STUDEN(SNO); * S(SNO,SNAME,AGE,SEX C(CNO,CNAME,TEACHER) SC(SNO,CNO,GRADE) (1)查询选修“数据库”课程的全体男同学的姓名 SELECT SNAME FROM S,C SC WHERE (S.SNO=SC.SNO AND C.CNO=SC.CNO AND SEX=‘男’ AND CNAME=‘数据库’); (2)检索至少选修李文老师所授课程中一门课程的女学生姓名 SELECT SNAME FROM S WHERE SEX=‘F’ AND SNO IN(SELECT SNO FROM SC WHERE CNO IN(SELECT CNO FROM C WHERE TEACHER=‘李文’)); * (3)检索王林同学不学课程的课程号 SELECT CNO FROM C WHERE CNO NOT IN(SELECT CNO FROM SC WHERE SNO IN(SELECT SNO FROM S WHERE SNEME=‘王林’)); (4)检索全部学生都选修课程的课程号与课程名 SELECT CNO,CNAME FROM C WHERE NOT EXISTS(SELECT * FROM S WHERE NOT EXISTS(SELECT * FROM SC WHERE SC.SNO=S.SNO AND SC.CNO=C.CNO)); * (6)在基本表S中检索每一门课程成绩都大于等于80分的 学生的学号、姓名和性别,并把检索值送往另外一张表STUDENT(SNO,SNAME,SEX) INSERT INTO S VALUES(’S10’,’WU’,20,’M’); (5)往基本表S中插入一个学生元组(’S10’,’WU’,20,’M’) INSERT INTO STUDENT(SNO,SNAME,SEX) SELECT SNO,SNAME,SEX FROM S WHERE NOT EXISTS(SELECT * FROM SC WHERE GRADE80 AND S.SNO=SC.SNO); * (7)把低于总平均成绩的女同学的成绩提高10% UPDATE SC SET GRADE=GRADE*1.1% WHERE GRADE(SELECT AVG(GRADE) FROM SC) AND SNO IN(SELECT SNO FROM S WHERE SEX=‘F’); (8)把王林同学的学习课程和成绩全部删去 DELETE FROM SC WHERE SNO IN(SELECT SNO FROM S WHERE SNAME=‘王林’); *

文档评论(0)

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

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

1亿VIP精品文档

相关文档