sql程序设计题共34个题带答案Word文档格式.docx

上传人:b****1 文档编号:3221625 上传时间:2023-05-01 格式:DOCX 页数:14 大小:19.06KB
下载 相关 举报
sql程序设计题共34个题带答案Word文档格式.docx_第1页
第1页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第2页
第2页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第3页
第3页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第4页
第4页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第5页
第5页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第6页
第6页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第7页
第7页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第8页
第8页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第9页
第9页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第10页
第10页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第11页
第11页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第12页
第12页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第13页
第13页 / 共14页
sql程序设计题共34个题带答案Word文档格式.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

sql程序设计题共34个题带答案Word文档格式.docx

《sql程序设计题共34个题带答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《sql程序设计题共34个题带答案Word文档格式.docx(14页珍藏版)》请在冰点文库上搜索。

sql程序设计题共34个题带答案Word文档格式.docx

set@s=0

while@i<

=-1

begin

set@s=@s+@i

set@i=@i+1

print@s

3.---------------

编写程序,在100~999三位整数范围内,找出这样的数(水仙花数):

该数等于其各位数字的立方和。

如:

371=3^3+7^3+1^3,即371就是水仙花数。

注意:

3^3表示3的3次方,7^3表示7的3次方,1^3表示1的3次方。

DECLARE@Aint,@Bint,@Cint

DECLARE@Xint

SET@x=100

while@X<

=999

set@A=FLOOR(@x/100)

SET@B=FLOOR((@x-@a*100)/10)

SET@C=@X-@A*100-@B*10

if@x=power(@A,3)+power(@B,3)+power(@c,3)

print@x

set@X=@X+1

4.---------------

创建一个存储过程,输入一个自然数,判断其是否为素数并使用输出参数将判断结果输出。

createprocsushu@aint,@pvarchar

(2)output

declare@iint

set@i=2

=@a-1

if@a%@i=0break

if@i>

@a-1

set@p='

是'

else

否'

5.---------------

求自然数1~100之间偶数之和

set@i=1

=100

set@i=@i+2

6.---------------

创建存储过程gcl:

统计数据表zcj(列名:

学号、班级、姓名、期末成绩、平时成绩、总成绩)每个班级的人数。

createprocgcl

select班级,count(*)fromzcjgroupby班级

7.---------------

求s=2+4+8+16…+1024

=10

set@s=@s+power(2,@i)

8.---------------

编写程序,输出由1、2、3、4、5、6这六个数字组成的所有可能的两位数,并统计它们的个数。

declare@iint,@jint,@pvarchar(100),@nint

select@i=1,@n=0

=6

select@j=1,@p='

'

while@j<

set@p=@p+str(@i*10+@j,2)+space

(2)

set@n=@n+1

set@j=@j+1

print@p

print@n

9.---------------

创建存储过程gcb:

计算数据表gz(列名:

单位名称、姓名、职称、基本工资、津贴、水电费、实发工资、备注)中的备注:

职称为“教授”、“讲师”、“助教”分别对应的备注为“高职”、“中职”、“初职”。

“职称”的的类型为Varchar(10),“备注”列的类型为Varchar(10)。

createprocgcb

updategzset备注=case职称

when‘教授’then‘高职’

when‘讲师’then‘中职’

when‘助教’then‘初职’end

10.---------------

求s=a+aa+aaa+…+aaa…aaa(n个a),其中a和n的值由用户使用Set或Select语句自己输入。

例如,当a=3,n=4时,S=3+33+333+3333。

11.---------------

计算1^3+2^3+3^3+…+100^3.其中:

1^3表示1的3次方,2^3表示2的3次方,…,100^3表示100的3次方。

set@s=@s+power(@i,3)

12.---------------

输出一个数列:

10,9,8,7,6,5,4,3,2,1

declare@aint

set@a=10

while@a>

=1

print@a

set@a=@a-1

13.---------------

创建存储过程gcm:

根据学号查询对应的准考证号,数据表为学生信息表xsxx(列名:

准考证号,学号,姓名,性别,专业,学院)。

当执行存储过程execgcm'

201352480577'

,则可以显示学号为'

的同学的准考证号。

“准考证号”、“学号”列的数据类型均为char(12)。

createprocgcm@xhchar(12)

select准考证号fromxsxxwhere学号=@xh

execgcm‘201352480577’

14.---------------

计算1!

+2!

+…+20!

declare@iint,@jint,@sreal,@preal

select@i=1,@s=0,@p=1

=20

set@p=@p*@i

set@s=@s+@p

15.---------------

利用随机函数RAND和函数floor,产生30个1到20之间的随机整数,使用WHILE语句显示这30个随机数。

Declare@iint

Set@i=1

While@i<

=30

Begin

Printfloor(rand()*20+1)

Set@i=@i+1

End

16.---------------

求s=0.01+0.02+0.03+…+1

declare@ifloat,@sfloat

set@i=0.01

set@i=@i+0.01

17.---------------

创建存储过程gce:

计算数据表fk(列名:

序号、姓名、数学、物理、历史、政治、总分、分科意见)中的分科意见。

总分>

360,全能生;

数学、物理分数之和>

=160,理科生;

其它情况:

文科生。

“分科意见”列的类型为Varchar(10)。

createprocgce

as

updatekfset分科意见=case

when总分>

360then‘全能生’

when数学+物理>

=160then‘理科生’

then‘文科生’end

18.---------------

创建存储过程gco:

根据学号查询和该学号同一宿舍同学的姓名及联系电话,数据表为学生管理表xsgl(列名:

学号,姓名,性别,宿舍号,专业,院系,联系电话)。

当执行存储过程execgco'

,则可以显示和该学号同宿舍同学的姓名及联系电话。

“学号”列的数据类型为char(12),“宿舍号”和“联系电话”列的数据类型均为varchar(20)。

createprocgco@xhchar(12)

select姓名,联系电话fromxsgl

where宿舍号=(select宿舍号from学号=@xh)

execgco'

19.---------------

设纸的厚度为0.5毫米,将纸对折,再对折…,求至少对折多少次,纸张的厚度能达到珠穆朗玛峰的高度8848米。

declare@hreal,@nint

select@h=0.0005,@n=0

while@h<

=8848.13

set@h=@h*2

print'

至少对折'

+cast(@nasvarchar)+'

次可以达到'

20.---------------

创建存储过程gck:

学号、班级、姓名、期末成绩、平时成绩、总成绩)每个班级总成绩的平均值。

Createprocgck

As

Select班级,avg(总成绩)fromzcj

Groupby班级

21.---------------

在国际象棋棋盘的64个格上依次放入小麦1粒、2粒、4粒、8粒…,求按此规律放满64个格需要多少粒小麦。

declare@aint,@bfloat

set@a=0

set@b=0

while@a<

=63

set@b=@b+power(2.0,@a)

set@a=@a+1

print@b

22.---------------

求s=1+1/2*2+1/3*3+1/4*4+…+1/100*100

set@s=@s+1.0/(@i*@i)

23.---------------

创建存储过程gcq:

根据优惠率输出对应图书的折后价,数据表为图书管理表tsgl(列名:

图书标识,书名,图书分类,价格,出版日期)。

如优惠率为20%,当执行存储过程execgcq0.2,则显示对应图书的图书标识,书名及折后价。

“图书标识”列的数据类型为char(6),“价格”列的数据类型为real。

Createprocgcq@yhreal

As

Select图书标识,书名,价格*@yhas折后价fromtsgl

24.---------------

创建存储过程gcn:

根据姓名查询对应的准考证号,数据表为学生信息表xsxx(列名:

当执行存储过程execgcn'

李丽'

,则可以显示姓名为'

同学的准考证号。

“准考证号”列的数据类型为char(12),“姓名”列的数据类型为varchar(10)。

Createprocgcn@xmvarchar(10)

Select姓名,准考证号fromxsxxwhere姓名=@xm

25.---------------

创建存储过程gci:

数据表bz包含以下列:

姓名、性别、毕业学校、毕业时间、获奖级别、获奖次数、备注。

根据“毕业时间”列计算“备注”列:

2007年毕业的备注为“新聘”,其它为空白。

“备注”列的类型为Varchar(10),“毕业时间”列的类型为Datetime。

Createprocgci

Updatebzset备注=case

Whenyear(毕业时间)=2007then‘新聘’

Else‘’end

26.---------------

有一个分数序列,求出这个序列的前20项之和。

2/1,3/2,5/3,8/5,13/8,21/13,….提示:

后一项是前一项的倒数加1。

declare@aint,@bfloat,@treal

set@a=1

set@t=2.0/1

set@b=@b+@t

set@t=1.0/@t+1

27.---------------

创建存储过程gcp:

根据图书标识删除对应的图书信息,数据表为图书管理表tsgl(列名:

当执行存储过程execgcp'

TC4203'

,则可以删除标识为'

对应图书的数据。

“图书标识”列的数据类型为char(6)。

createprocgcp@tsbschar(6)

as

deletefromtsglwhere图书标识=@tsbs

28.---------------

求和:

1^1+2^2+3^3+…+10^10.其中:

1^1表示1的1次方,2^2表示2的2次方,…,10^10表示10的10次方。

set@s=@s+power(@i,@i)

29.---------------

计算10!

set@s=1

set@s=@s*@i

30.---------------

利用循环结构求s的值,S=1*2*3+2*3*4+…+i*(i+1)*(i+2)+…+15*16*17的值。

=15

set@s=@s+@i*(@i+1)*(@i+2)

31.---------------

创建存储过程gca:

单位名称、姓名、基本工资、津贴、个人税、实发工资、备注)中的备注:

单位名称为“理学院”、“工学院”、“商学院”分别对应的备注为“理”、“工”、“商”。

“单位名称”的的类型为Varchar(20),“备注”列的类型为Varchar(10)。

Createprocgca

Updategzset备注=case单位名称

When‘理学院’then‘理’

When‘工学院’then‘工’

When‘商学院’then‘商’

32.---------------

创建存储过程gcg:

数据表mz包括以下列:

工号、司机、货物类别、毛重、皮重、净重。

根据“司机”列数据计算“工号”列,李大方、赵美丽、张可爱的工号分别是“01”、“02”、“03”。

“司机”列的类型为Varchar(10),“工号”列的类型为char

(2)。

Createprocgcg

Updatemzset工号=case司机

When‘李大方’then‘01’

When‘赵美丽’then‘02’

When‘张可爱’then‘03’

33.---------------

创建存储过程gcj:

统计数据表xs(列名:

序号、姓名、部门、工作时数、小时报酬、薪水)每个部门的薪水之和。

Createprocgcj

Select部门,sum(薪水)fromxsgroupby部门

34.---------------

找出并输出100-999之间所有能被7整除的数

set@i=100

if@i%7=0

print@i

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

当前位置:首页 > 初中教育 > 语文

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

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