《2022年实验三、数据库单表查询宣贯 .pdf》由会员分享,可在线阅读,更多相关《2022年实验三、数据库单表查询宣贯 .pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、实验三单表查询一、 实验目的掌握简单 SQL查询语句的应用,包括like、top、order by 、compute 和聚集函数的应用。二、 实验内容1、基本查询(1)查询 Student 表中全体学生的全部信息select* fromStudent (2)查询全体学生的学号、姓名selectSno , Sname fromStudent 2、查询时改编列标题的显示、查询全体学生的学号、姓名、家庭地址信息,兵分别加上“学生“、“学号”、“家庭地址 ” 的别名信息selectSno学号 , Sname姓名 , Home_addr家庭住址信息fromStudent 3、条件查询名师资料总结 - -
2、 -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 7 页 - - - - - - - - - (1)、查询成绩大于80 分的学生的学号及课程号、成绩selectSno , Cno , Grade fromSC whereGrade 80 (2)查询成绩在 7580 分的学生的学号及课程号、成绩selectSno , Cno , Grade fromSC whereGradebetween 75 and 80 (3)查询选秀了课程号为“002 ”且成绩大于 80 分的学生的学号selectSno
3、 fromSC whereCno =002 andGrade 80 (4)某些学生选秀某们课程后没有参加考试,所以有选课记录,但没有考试成绩,请查询缺少成绩单额学生的学号和相应的课程号selectSno , Cno fromSC whereGrade =null 4、基于 IN 子句的数据查询从 Course表中查询出 ” 高数” 、“ C 语言程序设计 ” 的所有信息select* fromCourse whereCnamein( 高数 , C语言程序设计 ) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
4、- - - - - - 第 2 页,共 7 页 - - - - - - - - - 5、基于 between and 子句的数据查询查询所有成绩在 7080 分之间的学生选课信息selectSno , Cno , Grade fromSC whereGradebetween 70 and 80 6、基于 like子句的查询(1)从 Student表中分别检索出姓“张”的所有同学的资料select* fromStudent whereSnamelike 张 % (2)检索名字的第二个字是“ 红” 或“ 虹” 的所有同学的资料select* fromStudent whereSnamelike_
5、红%orSnamelike_ 虹%(3)查询课程名为Visual_Basic的课程的学分selectCredit fromCourse whereCname =Visual_Basic 7、使用 top关键字查询名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 7 页 - - - - - - - - - (1)从选课表中检索出前3 个课程信息selecttop 3 * fromSC (2)从选课表中检索出前面20%的课程信息selecttop 20 percent* fro
6、mSC 8 消除重复行检索出学生逸轩课程的课程号,要求显示的课程号不重复selectdistinctCno fromSC 9、查询经过计算的值查询全体学生都的姓名及其年龄selectSname , datediff( year , Brith, getdate()年龄fromStudent 10、使用 order by语句对查询的结果进行排序(1)显示所有学生的基本信息,按班级号排序,若班级号相同则再按学号排序select* fromStudent orderbyClassnoasc 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
7、- 名师精心整理 - - - - - - - 第 4 页,共 7 页 - - - - - - - - - (2)查询全体学生的姓名及其年龄,并按学生的年龄的降序排列selectSname , datediff( year , Brith, getdate() fromStudent orderbydatediff( year, Brith, getdate()desc 11、使用聚合函数(1)查询学生的总人数selectCOUNT(*) fromStudent (2)计算选秀了“ 002”号课程的学生的平均成绩、最高分、最低分selectMAX( Grade ), MIN ( Grade ),
8、 AVG( Grade ) fromSC whereCno =002 12、使用 group 子句进行查询(1)查询各班级学生的总人数selectClassno, count( Sno ) fromStudent groupbyClassno (2)汇总总分大于 150 分的学生的学号及总成绩selectSno , SUM( Grade ) fromSC groupbySno havingSUM( Grade ) 150 (3)查询各个课程号相应的选课人数selectCOUNT( Sno ) fromSC groupbyCno 13、使用 compute 和 compute by 子句进行查询
9、名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 7 页 - - - - - - - - - (1)汇总每个学生的学号及总成绩selectSno , Grade fromSC orderbySnoasc computeSUM( Grade )bySno (2)按学号汇总出每个学生的学号及总成绩、最高分、最低分以及所有学生的总成绩select* fromSC orderbySno computesum( Grade ) computesum( Grade ),max( Grade ), min ( Grade )bySno 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 7 页 - - - - - - - - - 三、问题、总结及体会单表查询,相对简单,不过还是需要注意细节和前后关系。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 7 页 - - - - - - - - -