


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、用SQL语句创建如下三个基本表:学生表(Student)、课程表(Course)、学生选课表(SC),结构如下所示Student表结构列名说明数据类型约束Sno学号字符串,长度为7主码Sname姓名字符串,长度为10非空Ssex性别字符串,长度为2取男或女Sage年龄整数取值15?45Sdept所在院系字符串,长度为20默认为计算机系CreatetableStudent(Snovarchar(7)primarykey,Snamevarchar(10)notnull,Ssexcharcheck(Ssex='男'orSsex='女'),Sageintcheck(Sa
2、gebetween15and45),Sdeptvarchar(20)default('计算机系')Course表结构列名说明数据类型约束Cno课程号字符串,长度为10主码Cname课程名字符串,长度为20非空Ccredit学分整数取值大于0Semester学期整数取值大于0Period学时整数取值大于0Createtablecourse(Cnovarchar(10)primarykey,Cnamevarchar(20)notnull,Ccreditintcheck(Sctedit>0),Semesterintcheck(Semester>0),Periodintch
3、eck(Period>0)SC表结构列名说明数据类型约束Sno学号字符串,长度为7主码,引用Student的外码Cno课程号字符串,长度为10主码,引用Course的外码Grade成绩整数取值0?100Snovarchar(7)foreignkeyreferencesstudent(Sno),Cnovarchar(10)foreignkeyreferencescourse(Cno),Gradeintcheck(Gradebetween0and100),Primarykey(Sno,Cno)1. 查询学生选课表中的全部数据。SELECT*FROMSCgo2. 查询计算机系学生的姓名、年龄。
4、SelectSname,SageFromStudentWhereSdept='计算机系'3. 查询成绩在70?80分之间的学生的学号、课程号和成绩。SelectSno,Cno,GradeFromCourse,ScWo=sc.Cnoandsc.Gradebetween70and804. 查询计算机系年龄在18?20之间且性别为“男”的学生的姓名和年龄。SelectSname,SageFromStudentWhereSagebetween18and20andSsex='男'andSdept='计算机系,go5. 查询课程号为“C01”的课程的最高分数。Sel
5、ecttop1Gradeselectmax(Grade)as最高分FromScfromScWhereCno='C01'whereCno='C01'OrderbyGradedescorderbyGradedesc6. 查询计算机系学生的最大年龄和最小年龄Selectmax(Sage)as年龄最大,min(Sage)as年龄最小FromStudentWhereSdept='计算机系,乙统计每个系的学生人数。Selectcount(Sdept)as学生人数,SdeptFromStudentGroupbySdeptSelectcount(Sno)as选课人数,c
6、.Sno,max(Grade)as最高分FromCoursecleftjoinSo=s.CnoGroupbyc.Cno9.统计每个学生的选课门数和考试平均成绩,并按学号的升序显示结果。Selectsno,avg(grade)as'平均成绩',count(cno)as'选课门数,FromscGroupbysnoOrderbysno10. 查询总成绩超过200分的学生,要求列出学号、总成绩。Selectsno,sum(grade)FromscGroupbysnoHavingsum(grade)>20011. 查询选修了课程“C02'的学生的姓名和所在系。Sel
7、ectsname,sdeptFromstudents1,scs2Wheres1.sno=o='c02'12.查询成绩在80分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果。13. Selects1.sname,o,s2.gradeFromstudents1,scs2Wheres1.sno=s2.snoandgrade>80Orderbygradedesc查询哪些课程没有人选修、要求列出课程号和课程名So,ameFo=oGo,ameHavingcount(s.sno)=0用子查询实现如下查询:查询选修了课程“Selectsname,sdept,snoFromstud
8、entWheresnoin(SelectsnoFromscWherecno=)查询信息系成绩在Selectsno,snameFromstudentWheresdept='夕卜语系'andsnoin(COT勺学生的姓名和所在系c01'8O分以上的学生的学号、姓名SelectsnoFromscWheregrade>8O查询计算机系考试成绩最局的学生的姓名Selects1.snamefromstudentsWheresdept='计算机系'andsnoin(selectsnofromscWheregradein(selectmax(Grade)froms
9、c)15.删除选课成绩小于50分的学生的选课记录DeletefromscWheregrade<70Select*fromsc验证16. 将所有选修了课程“C01”的学生的成绩加10分:UpdatescSetgrade=grade+10Wherecno='c01'17. 将计算机系所有选修了课程“计算机文化基础”课程的学生的成绩加10分。Select*fromscUpdatescSetgrade=grade+10Wherecnoin(selectcnofromcourseWherecname='计算机文化基础)18. 创建查询学生的学号、姓名、所在系、课程号、课程名
10、、课程学分的视图。Select*fromcourseSelect*fromstudentsSelect*fromscCreateview学生基本信息AsSelectstudents.sno,sname,sdept,o,cname,ccreditFromcourse,sc,studentsWo=oAo=students.sno19. 创建查询每个学生的平均成绩的视图,要求列出学生学号及平均成绩。Createviews_avgAsSelectsno,avg(Grade)as平均成绩fromscGroupbysno20.创建查询每个学生的选课学分的视图,要求列出学生学号及总学分。Createview
11、s_scAsSelectstudents.sno,sum(ccredit)as总学分fromStudents,sc,courseWherestudents.sno=sc.snoAo=oGroupbystudents.sno21.用SQL语句创建一个名为f1的函数,该函数能够求出3到100之间的所有素数之和。Createfunctionf_1()ReturnsintAsBeginDeclareaint,bint,iint,sumintSeti=3Setsum=0Whilei<101BeginSetb=0Whilea<=i/2BeginIfi%a=0BeginSetb=1BreakEn
12、dSeta=a+1EndIfb=0-b为0说明之前没有比i小的数字可以把i整除BeginSetsum=sum+iEndSeti=i+1EndReturnsumEndGoSelectdbo.f_1()22.用SQL语句创建一个名为f2的函数,该函数能够求出任意两个数的最大值。Createfunctionf_2(x1int,x2int)returnsintAsBeginDeclaremaxintIfx1>x2ReturnmaxEndSelectdbo.f_2(2,6)23.用SQL语句创建一个名为pro_get_stu_information的存储过程,该存储过程能够根据用户指定的Sno(学号)求出与该学号对应的学生姓名、课程名、成绩。Createprocedurepro_get_stu_informationmchar(6)outputAsSelectsname,cname,gradefromstudents,sc,courseWherestudents.sno=o=oandsc.sno=mExecpro_get_stu_information'0603002'集的索24.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023一年级数学下册 五 绿色行动-100以内的加减法(一)信息窗4 两位数减一位数(退位)教学实录 青岛版六三制
- 2016七年级信息技术上册 第2课 获取图片教学实录 新人教版
- 8 装扮我们的教室 第二课时 教学设计-2023-2024学年道德与法治二年级上册统编版
- 2024-2025学年新教材高中生物 第1章 遗传因子的发现 第1节 第1课时 一对相对性状的杂交实验过程和解释教学实录 新人教版必修2
- 3 植物长在哪里 教学设计-2024-2025学年科学一年级上册教科版
- 2024-2025学年高中历史 第5单元 货币与财税制度 第15课 货币的使用与世界货币体系的形成教学实录 新人教版选择性必修第一册
- 15《真理诞生于一百个问号之后》教学设计-2024-2025学年统编版语文六年级下册
- 1《小蝌蚪找妈妈》教学设计- 2024-2025学年语文二年级上册统编版
- 2023一年级数学下册 七 100以内的加法和减法(二)1进位加法(连加计算)教学实录 西师大版
- 2024年学年八年级地理上册 第一章《中国的疆域与人口》第三节 中国的人口教学实录 (新版)湘教版
- 普通高中学生综合素质评价自我陈述报告
- 2025年江西电力职业技术学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 2025年吉安职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 《展示设计》课件-第一章 展示设计概述
- 建筑施工安全管理存在的问题及对策【15000字(论文)】
- 2024年湖南铁道职业技术学院高职单招语文历年参考题库含答案解析
- 2024年山西同文职业技术学院高职单招职业适应性测试历年参考题库含答案解析
- 学生常见传染病的预防
- 2025年青海省建筑安全员B证考试题库
- 制种玉米种子质量控制培训
- 2024年长沙民政职业技术学院单招职业技能测试题库及答案解析
评论
0/150
提交评论