- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.
.
Sql程序设计题
1.---------------
创建存储过程gch: 数据表jt包含以下列:单位名称、姓名、职称、基本工资、职贴。根据“职称”列,计算“职贴”列。职称与职贴的对应关系:教授490;副教授250;讲师150;助教100。注:“职称”的的类型为Varchar(10)。
create proc gch
as
update jt set 职贴=
case 职称
when 教授 then 490
when 副教授 then 250
when 讲师 then 150
else 100
end
2.---------------
求s=-99-97-95-93-…-3-1
declare @i int,@s float
set @i=-99
set @s=0
while @i=-1
begin
set @s=@s+@i
set @i=@i+1
end
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 @A int,@B int,@C int
DECLARE @X int
SET @x=100
while @X=999
begin
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
end
4.---------------
创建一个存储过程,输入一个自然数,判断其是否为素数并使用输出参数将判断结果输出。
create proc sushu @a int,@p varchar(2) output
as
declare @i int
set @i=2
while @i=@a-1
begin
if @a%@i=0 break
set @i=@i+1
end
if @i@a-1
set @p= 是
else
set @p= 否
5.---------------
求自然数1~100之间偶数之和
declare @i int,@s float
set @i=1
set @s=0
while @i=100
begin
set @s=@s+@i
set @i=@i+2
end
print @s
6.---------------
创建存储过程gcl: 统计数据表zcj (列名:学号、班级、姓名、期末成绩、平时成绩、总成绩)每个班级的人数。
create proc gcl
as
select 班级,count(*) from zcj group by 班级
7.---------------
求s=2+4+8+16…+1024
declare @i int,@s float
set @i=1
set @s=0
while @i=10
begin
set @s=@s+power(2,@i)
set @i=@i+1
end
print @s
8.---------------
编写程序,输出由1、2、3、4、5、6这六个数字组成的所有可能的两位数,并统计它们的个数。
declare @i int,@j int,@p varchar(100),@n int
select @i=1,@n=0
while @i=6
begin
select @j=1 ,@p=
while @j=6
begin
set @p=@p+str(@i*10+@j,2)+space(2)
set @n=@n+1
set @j=@j+1
end
print @p
set @i=@i+1
end
print @n
9.---------------
创建存储过程gcb: 计算数据表gz(列名:单位名称、姓名、职称、基本工资、津贴、水电费、实发工资、备注)中的备注:职称为“教授”、“讲师”、“助教”分别对应的备注为“高职”、“中职”、“初职”。注:“职称”的的类型为Varchar(10),“备注”列的类型为Varchar(10)。
create proc gcb
as
update gz set 备注=case 职称
when ‘教授’ then ‘高职’
when ‘讲师’ then ‘中职’
when ‘助教’ then ‘初职’ end
10.---------------
求s=a+aa+aaa+…+aaa…aaa(n个a),其中
文档评论(0)