SQL语句综合训练实习报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL语句综合训练实习报告

信 息 工 程 学 院 (SQL Server 2008) 实习报告 CREATE VIEW A1(ATHno,scor) AS SELECT ATHno,SUM(Score) FROM SCORE GROUP BY ATHno; 然后建立运动员编号和他的总积分以及所属系名的视图,即在视图A1与表ATHLETE的基础上再建立一个视图A2; CREATE VIEW A2(ATHno,scor,Adepart) AS SELECT A1.ATHno,scor,Adepart FROM A1,ATHLETE WHERE A1.ATHno=ATHLETE.ATHno; 然后再建立一个系名以及每个系的总积分,即在视图A2的基础上再建立一个视图A3; CREATE VIEW A3(Adepart,ssum) AS SELECT Adepart,SUM(scor) FROM A2 GROUP BY Adepart ; 然后从视图A3进行操作,查询最高积分以及系名,查询语句如下: SELECT Adepart, FROM A3 WHERE ssum = (SELECT MAX(ssum) FROM A3 ); SELECT MAX(ssum) FROM A3 ; 然后执行,结果如下: 本来想让两个一起输出,但是一直提示写得语句有错误,最后只是实现了如上所示的查询,只能两个分开。 我写的比较麻烦,应该还有简单点的方法,需要我继续努力。 (2)找出在1操场进行比赛的各项目名称及其冠军的姓名。 此题我仍然仿照第一题的做法,先建立几个视图,然后对试图进行查询操作,写的也有点麻烦。 首先,先建立一个项目比赛地点,运动员编号,比赛编号,以及对应得分的视图,即在表ITEM,与SOCRE的基础上建立视图B1; CREATE VIEW B1 AS SELECT Ilocation,SCORE.ITEMno,ATHno,Score FROM ITEM ,SCORE WHERE Ilocation=1操场AND SCORE.ITEMno=ITEM.ITEMno; CREATE VIEW B2(ITEMno,maxsocre) AS SELECT ITEMno,MAX(Score) FROM B1 GROUP BY ITEMno 然后进行查询操作,利用嵌套查询,实现的SQL语句如下: SELECT Aname FROM ATHLETE WHERE ATHno IN (SELECT ATHno FROM B1 WHERE Score = (SELECT maxscore FROM B2) ) 然后执行结果如下: 我觉得此题也应该有更好的解决办法,我写的有点麻烦,还需要再次改进。 找出参加了张三所参加的所有项目的其他同学的姓名。 SQL语句为: SELECT Aname FROM ATHLETE WHERE ATHno IN (SELECT ATHno FROM SCORE WHERE ITEMno IN (SELECT ITEMno FROM SCORE WHERE ATHno IN (SELECT ATHno FROM ATHLETE WHERE Aname=张三))) EXCEPT SELECT Aname FROM ATHLETE WHERE Aname=张三 程序执行结果为: 建立视图文件,查询每个项目的项目名称、运动员姓名和所属系名。 SQL语句为: CREATE VIEW IS_A AS SELECT Iname,Aname,Adepart FROM ATHLETE,ITEM,SCORE WHERE ITEM.ITEMno=SCORE.ITEMno AND SCORE.ATHno=ATHLETE.ATHno 结果为: 经查张三因为使用了违禁药品,其成绩都记0分,请在数据库中做出相应修改。 SQL语句为: UPDATE SCORE SET Score=0 WHERE ATHno IN (SELECT ATHno FROM ATHLETE WHERE Aname=张三) 程序执行结果为: 而最初的数据为: 即学号为1002的值全部变为0,修改成功。 7.经组委会协商,需要删除女子跳高比赛项目。 SQL语句为: DELETE FROM SCORE WHERE ITEMno IN (SELECT ITEMno FROM ITEM WHERE Iname=女子跳高); DELETE FROM ITEM WHERE Iname=女子跳高; 然后对两个表格分别编辑前两百行,可以看到: 最开始的数据分别为: 对比可以看出删除了编号为x004的一组。 新建一个服务器用户user2,使user2可以访问数据库y_x_c,对运动员表有查询和修改权限,没有插入和

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档