SQL语句创建学生信息数据库表的示例Word文件下载.docx

上传人:b****3 文档编号:6443849 上传时间:2023-05-06 格式:DOCX 页数:10 大小:17.19KB
下载 相关 举报
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第1页
第1页 / 共10页
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第2页
第2页 / 共10页
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第3页
第3页 / 共10页
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第4页
第4页 / 共10页
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第5页
第5页 / 共10页
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第6页
第6页 / 共10页
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第7页
第7页 / 共10页
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第8页
第8页 / 共10页
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第9页
第9页 / 共10页
SQL语句创建学生信息数据库表的示例Word文件下载.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

SQL语句创建学生信息数据库表的示例Word文件下载.docx

《SQL语句创建学生信息数据库表的示例Word文件下载.docx》由会员分享,可在线阅读,更多相关《SQL语句创建学生信息数据库表的示例Word文件下载.docx(10页珍藏版)》请在冰点文库上搜索。

SQL语句创建学生信息数据库表的示例Word文件下载.docx

取‘男’或‘女’

Sage

年龄

整数

取值15~45

Sdept

所在院系

字符串,长度为20

默认为‘计算机系’

CreatetableStudent

Snovarchar(7)primarykey,

Snamevarchar(10)notnull,

Ssexchar

(2)check(Ssex=‘男’orSsex=’女’),

Sageintcheck(Sagebetween15and45),

Sdeptvarchar(20)default(‘计算机系’)

Course表结构

Cno

课程号

Cname

课程名

Ccredit

学分

取值大于0

Semester

学期

Period

学时

Createtablecourse

Cnovarchar(10)primarykey,

Cnamevarchar(20)notnull,

Ccreditintcheck(Sctedit>

0),

Semesterintcheck(Semester>

Periodintcheck(Period>

0)

SC表结构

主码,引用Student的外码

Cno

主码,引用Course的外码

Grade

成绩

取值0~100

CreatetableSC

Snovarchar(7)foreignkeyreferencesstudent(Sno),

Cnovarchar(10)foreignkeyreferencescourse(Cno),

Gradeintcheck(Gradebetween0and100),

Primarykey(Sno,Cno)

1.查询学生选课表中的全部数据。

SELECT*

FROMSC

go

2.查询计算机系学生的姓名、年龄。

SelectSname,Sage

FromStudent

WhereSdept=’计算机系’

3.查询成绩在70~80分之间的学生的学号、课程号和成绩。

SelectSno,Cno,Grade

FromCourse,Sc

Where=andbetween70and80

4.查询计算机系年龄在18~20之间且性别为“男”的学生的姓名和年龄。

WhereSagebetween18and20andSsex=’男’andSdept=’计算机系’

5.查询课程号为“C01”的课程的最高分数。

Selecttop1Gradeselectmax(Grade)as最高分

FromScfromSc

WhereCno=’C01’whereCno=’C01’

OrderbyGradedescorderbyGradedesc

6.查询计算机系学生的最大年龄和最小年龄。

Selectmax(Sage)as年龄最大,min(Sage)as年龄最小

7.统计每个系的学生人数。

Selectcount(Sdept)as学生人数,Sdept

GroupbySdept

8.统计每门课程的选课人数和考试最高分。

Selectcount(Sno)as选课人数,,max(Grade)as最高分

FromCoursecleftjoinScson=

Groupby

9.统计每个学生的选课门数和考试平均成绩,并按学号的升序显示结果。

Selectsno,avg(grade)as’平均成绩’,count(cno)as’选课门数’

Fromsc

Groupbysno

Orderbysno

10.查询总成绩超过200分的学生,要求列出学号、总成绩。

Selectsno,sum(grade)

Havingsum(grade)>

200

11.查询选修了课程“C02”的学生的姓名和所在系。

Selectsname,sdept

Fromstudents1,scs2

Where=and=’c02’

12.查询成绩在80分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果。

Select,,

Where=andgrade>

80

Orderbygradedesc

13.查询哪些课程没有人选修、要求列出课程号和课程名。

Select,

Fromcoursecleftjoinscson=

Groupby,

Havingcount=0

14.用子查询实现如下查询:

(1)查询选修了课程“C01”的学生的姓名和所在系。

Selectsname,sdept,sno

Fromstudent

Wheresnoin(

Selectsno

Fromsc

Wherecno=’c01’

(2)查询信息系成绩在80分以上的学生的学号、姓名。

Selectsno,sname

Wheresdept=’外语系’andsnoin(

Selectsno

Fromsc

Wheregrade>

(3)查询计算机系考试成绩最高的学生的姓名。

Selectfromstudents

Wheresdept=’计算机系’andsnoin

(selectsnofromsc

Wheregradein

(selectmax(Grade)fromsc)

15.删除选课成绩小于50分的学生的选课记录。

Deletefromsc

Wheregrade<

70

Select*fromsc—验证

16.将所有选修了课程“C01”的学生的成绩加10分:

Updatesc

Setgrade=grade+10

Wherecno=’c01’

17.将计算机系所有选修了课程“计算机文化基础”课程的学生的成绩加10分。

Select*fromsc

Wherecnoin

(selectcnofromcourse

Wherecname=’计算机文化基础’)

18.创建查询学生的学号、姓名、所在系、课程号、课程名、课程学分的视图。

Select*fromcourse

Select*fromstudents

Select*fromsc

Createview学生基本信息

As

Select,sname,sdept,,cname,ccredit

Fromcourse,sc,students

Where=

And=

19.创建查询每个学生的平均成绩的视图,要求列出学生学号及平均成绩。

Createviews_avg

Selectsno,avg(Grade)as平均成绩fromsc

20.创建查询每个学生的选课学分的视图,要求列出学生学号及总学分。

Createviews_sc

Select,sum(ccredit)as总学分from

Students,sc,course

21.用SQL语句创建一个名为f_1的函数,该函数能够求出3到100之间的所有素数之和。

Createfunctionf_1()

Returnsint

Begin

Declare@aint,@bint,@iint,@sumint

Set@i=3

Set@sum=0

While@i<

101

Begin

Set@b=0

While@a<

=@i/2

Begin

If@i%@a=0

Begin

Set@b=1

Break

End

Set@a=@a+1

If@b=0--@b为0说明之前没有比@i小的数字可以把@i整除

Set@sum=@sum+@i

Set@i=@i+1

Return@sum

Go

Select()

22.用SQL语句创建一个名为f_2的函数,该函数能够求出任意两个数的最大值。

Createfunctionf_2(@x1int,@x2int)returnsint

Declare@maxint

If@x1>

@x2

Return@max

Select(2,6)

23.用SQL语句创建一个名为pro_get_stu_information的存储过程,该存储过程能够根据用户指定的Sno(学号)求出与该学号对应的学生姓名、课程名、成绩。

Createprocedurepro_get_stu_information@mchar(6)output

Selectsname,cname,gradefromstudents,sc,course

Where=and=and

Execpro_get_stu_information’0603002’

24.为“学生”表创建一个依赖于“学号”的唯一的、非聚集的索引

Createuniquenonclusteredindexstu_intonstudents(sno)

25.通过游标逐行读取“学生”表的记录

Declarestu_curcursorfor

Select*fromstudentsforreadonly

Openstu_cur

Fetchstu_cur

Closestu_cur

Deallocatestu_cur

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2