- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
sql选择查询设计实验报告
实验二数据库的查询实验 一、实验目的和要求 掌握SQLServer查询分析器的使用方法,加深对SQL和Transact-SQL语言的查询语句的理解。 熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。 熟练掌握数据查询中的分组、统计、计算和组合的操作方法。 二、实验内容和原理 在实验一定义的“学生成绩数据库”中,使用T-SQL语句完成以下查询: 求计算机系学生的学号和姓名。 求选修了数学的学生学号、姓名和成绩。 求选修01课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。 查找选修课程的平均成绩位于前三名的学生的学号。 查询计算机系的姓刘且单名的学生的信息。 查询至少选修两门课程的学生学号。 查询学生的学号、课程号以及对应成绩与所有学生所有课程的最高成绩的百分比。 查询选修“数据库”课程,且成绩在80分以上的学生的学号和成绩。 查询所有姓“王”的同学没有选修的课程名。 查询选修了全部课程的学生的姓名。 求选修了学生“95001”所选修的全部课程的学生学号和姓名。 查询每一门课的间接先修课。 列出所有学生所有可能的选课情况。 列出每个学生的学号及选修课程号,没有选修的学生的学号也一并列出。 输出与“张三”同性别并位于同一个系的所有同学的姓名。 查询至少被两名男生选修的课程名。 对被两名以上学生所选修的课程统计每门课的选课人数。要求输出课程号和选修人数,查询结果按人数降序排列;若人数相同,按课程号升序排列。 列出选修课程超过3门的学生姓名及选修门数。 检索至少选修课程号为01和03的学生姓名。 检索至少选修课程“数学”和“操作系统”的学生学号。 查询‘操作系统’课程的最高分的学生的姓名、性别、所在系 查询数据结构的成绩低于操作系统的成绩的学生姓名及该生的这两门课的成绩 所有成绩都在70分以上的学生姓名及所在系。 三、实验环境 四、实验方法 1.将查询需求用Transact-SQL语言表示。 2.在SQLServer查询分析器的输入区中输入Transact-SQL查询语句。 3.发布执行命令,查看查询结果;如果结果不正确,进行修改,直到正确为止。 4.查询分析器及使用方法。 查询分析器是在开发数据库应用 系统时使用最多的工具。查询分析器的 主要作用是编辑Transact-SQL,将其发 送到服务器,并将执行结果及分析显示 出来。查询分析功能主 要通过测试查询成本,判断该查询是否 需要增加索引以提高查询速度,并可以 实现自动建立索引的功能、查询分析器 的界面如图1所示。 在查询分析器中的左边窗口是对 象浏览器,其中按树结构列出了数据库 对象;右上方是SQL代码区域.用于 输入SQL的查询语句;右下方为结果 区,用于显示查询结果和分析结果、对 图1SQLServerXX查询分析器于TSQL语句的执行结果,在结果区中 可以有4种不同的输出形式:标准执行将结果直接显示在结果区:网格执行将结果以表格形式显示在结果区;计划执行显示执行计划;索引分析为在结果区中显示查询的索引情况。上述输出形式,可以通过菜单或按钮选择。 五、调试过程 五、实验结果 六、总结 附录: --求计算机系学生的学号和姓名。 selectsno,sname fromstudent wheresdept=计算机 --求选修了数学的学生学号、姓名和成绩。 select,sname,grade fromstudents,sc,coursec where=and=andcname=数学 --求选修课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按 学号升序排列。 selectsno,grade fromsc wherecno=1 orderbygradedesc,snoasc --查找选修课程的平均成绩位于前三名的学生的学号。 selecttop3sno fromsc groupbysno orderbyavg(grade)desc --查询计算机系的姓刘且单名的学生的信息。 select* fromstudent wheresdept=计算机andsnamelike刘_ --查询至少选修两门课程的学生学号。 selectsno fromsc groupbysno havingcount(*)=2 --查询学生的学号、课程号以及对应成绩与所有学生所有课程
文档评论(0)