数据库实验二.docx
- 文档编号:2452075
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:14
- 大小:198.16KB
数据库实验二.docx
《数据库实验二.docx》由会员分享,可在线阅读,更多相关《数据库实验二.docx(14页珍藏版)》请在冰豆网上搜索。
数据库实验二
一、实验目的与要求
使学生掌握SQL Server查询分析器的使用方法,熟悉通过SELECT语句对表的简单查询、连接查询和嵌套查询的操作。
1.熟练掌握简单查询操作:
包裹投影、选择、数据排序、分组等查询操作。
2.熟练掌握连接查询操作:
包括等值连接、自然连接、笛卡尔积、交叉连接、内连接、外连接、自身连接等操作。
3.熟练掌握数据查询中的嵌套和统计查询的操作方法。
4.在SQL Server查询分析器中使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。
二、实验内容
(1)查询数学系学生的学号和姓名。
(2)求选修了课程的学生学号。
(3)查询选修001号课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。
(4)求选修课程001且成绩在80—90分之间的学生学号和成绩,并将成绩乘以系数0.8输出。
(5)求数学系或计算机系姓张的学生的信息。
(6)查看选修了课程、但没有成绩学生的学号、姓名、课程号和所在系部。
(7)查询学生的学号、姓名、课程名和成绩。
(8)分别实现学生和系的交叉连接、内连接、外连接。
(9)求选修了高等数学的学生学号和姓名。
(10)求001课程的成绩高于张力的学生学号和成绩。
(11)求其他系中年龄小于计算机系年龄最大者的学生。
(12)求其他系中比计算机系学生年龄都小的学生。
(13)求选修了001课程的学生姓名。
(14)求没有选修001课程的学生姓名。
(15)查询选修了全部课程的学生的姓名。
(16)求选修了学号为“200210102”的学生所选修的全部课程的学生学号和姓名。
selectstudent.sname,student.sno
fromstudent,depart
wherestudent.sdept=depart.sdepanddepart.dname='数学系'
selectdistinct(student.sno)
fromstudent,sc
wherestudent.sno=sc.sno
selectstudent.sno,student.sname,sc.grade
fromstudent,sc
wherestudent.sno=sc.snoandcno='1'
selectstudent.sno,student.sname,sc.grade
fromstudent,sc
wherestudent.sno=sc.snoandcno='1'
orderbysc.gradedesc,student.snoasc
selectstudent.sno,(sc.grade)*0.8
fromstudent,sc
wherestudent.sno=sc.snoando='1'
andsc.grade>=80andsc.grade<=90
select*
fromstudent,depart
wherestudent.sdept=depart.sdep
anddepart.dnamein('数学系','计算机系')
andstudent.snamelike'张%'
select*
fromstudent,sc
wherestudent.sno=sc.snoandsc.gradeisnull
selectstudent.sno,student.sname,o,sc.grade
fromstudent,sc,course
wherestudent.sno=sc.snoando=o
右外连接
selectstudent.sno,student.sname,student.sdept
fromstudentleftjoindeparton(student.sdept=depart.sdep)
交叉连接
select*fromstudentcrossjoindepart
内连接
selectstudent.sno,student.sname,student.sdept
fromstudent,depart
wherestudent.sdept=depart.sdep
9)求选修了高等数学的学生学号和姓名。
selectstudent.sno,student.sname
fromstudent,sc,course
wherestudent.sno=sc.snoando=oandame='数学'
(10)求001课程的成绩高于张力的学生学号和成绩。
selectstudent.sno,student.sname,sc.grade
fromstudent,sc,course
wherestudent.sno=sc.snoando=oandame='数学'andsc.grade>(selectsc.grade
fromstudent,sc,course
wherestudent.sno=sc.snoando=oandstudent.sname='张立'andame='数学')
(11)求其他系中年龄小于计算机系年龄最大者的学生。
selectstudent.sname
fromstudent,depart
wherestudent.sage<(selectmax(student.sage)
fromstudent,depart
wherestudent.sdept=depart.sdepanddepart.dname='计算机系')
anddepart.dname<>'计算机系'andstudent.sdept=depart.sdep
(12)求其他系中比计算机系学生年龄都小的学生。
selectstudent.sname
fromstudent,depart
wherestudent.sage fromstudent,depart wherestudent.sdept=depart.sdepanddepart.dname='计算机系') anddepart.dname<>'计算机系'andstudent.sdept=depart.sdep (13)求选修了001课程的学生姓名。 selectstudent.sname fromstudent,sc wherestudent.sno=sc.snoando='1' (14)求没有选修001课程的学生姓名。 selectstudent.sname fromstudent wherenotexists( select* fromsc wherestudent.sno=sc.snoando='1' ) selectstudent.sname fromstudent wherenotexists(select* fromcourse wherenotexists( select* fromsc wherestudent.sno=sc.snoando=o)); (16)求选修了学号为“95005”的学生所选修的全部课程的学生学号和姓名。 selectdistinctsno fromscscx wherenotexists( select* fromscscy wherescy.sno='95021'andnotexists(select* fromscscz wherescz.sno=scx.snoando=o))
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验