数据库操作--索引,视图与查询(一)要点.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库实验报告(四) 班别:13统计2班 姓名: 学号:2013240942 评分: 实验题目 数据库操作--索引,视图与查询(一) 实验目的 掌握用 SQL 命令创建索引 掌握用 SQL 命令创建数据视图; 掌握用 SQL 命令进行单表查询CREATE UNIQUE CLUSTERED INDEX Clano ON Class(Classid); GO CREATE UNIQUE CLUSTERED INDEX CLAno ON ClassAssign (Classid); GO CREATE UNIQUE CLUSTERED INDEX Crno ON Classroom (Roomid); GO CREATE UNIQUE CLUSTERED INDEX Courno ON Course (Cid); GO CREATE UNIQUE CLUSTERED INDEX Depno ON Department (Deptid); GO CREATE UNIQUE CLUSTERED INDEX Enrno ON Enrollment (Sid); GO CREATE UNIQUE CLUSTERED INDEX Stuno ON Student (sid); GO CREATE UNIQUE CLUSTERED INDEX Teano ON Teacher (Tid); GO 为Course表建立一基于课程名(Cname)的唯一索引: CREATE UNIQUE INDEX COCN ON Course(Cname); 为 Department表基于系名(Dname) 建立一唯一索引: CREATE UNIQUE INDEX DEDN ON Department(Dname); 为 Student表基于姓名(sname)和年龄(sage)建立一非聚簇索引,使数据基于姓名的升序和年龄的降序排列: CREATE NONCLUSTERED INDEX STSN ON Student(Sname ASC,Sage DESC); 建立一视图,用于以后维护数学系的学生信息: CREATE VIEW MA_Student AS SELECT Sname,sid,Sage FROM Student WHERE Deptid=MA WITH CHECK OPTION 删除Student表中基于sname和sage的非聚簇索引: DROP INDEX STSN ON Student 查询数学系(MA)全体学生的学号,姓名和年龄: SELECT Sid,Sname,Sage FROM Student WHERE Deptid=MA 查询计算机系(CS)小于19岁的学生的学号: SELECT Sid FROM Student WHERE Sage19 AND Deptid=CS 查询信息1班的学生的平均年龄: SELECT AVG(Sage) FROM Student WHERE Classid=信息1班 MA001最好成绩的学生的学号和成绩: SELECT Sid,grade FROM Enrollment WHERE grade IN (SELECT MAX(grade) FROM Enrollment WHERE Cid=MA001); 查询选修了MA001,MA002,CS005,IS003,EN004号课程中任一课程的学生的学号及姓名: SELECT Sid,Sname FROM Student WHERE Sid IN( SELECT Sid FROM Enrollment WHERE Cid IN(MA001,MA002,CS005,IS003,EN004)) 查询所有至少有三门课程不及格的学生的学号,姓名: SELECT Sid,Sname FROM Student WHERE Sid IN( SELECT Sid FROM Enrollment GROUP BY Sid HAVING COUNT(*)2 ) INTERSECT SELECT Sid,Sname FROM Student WHERE Sid IN( SELECT Sid FROM Enrollment WHERE grade60) 查询金融2班全体学生课程MA001的平均成绩: SELECT AVG(grade) FROM Enrollment WHERE Sid IN( SELECT Sid FROM Student WHERE Classid=金融2班 AND Cid=MA001 ) SELECT Sname,Sage,Sid FROM Stud

文档评论(0)

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

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

1亿VIP精品文档

相关文档