一、写一个GetMax函数
1. 具体要求
1)输入:四个 1~9 的数字
2)输出:这四个数字组成的最大的整数
实现如图输出
2. T-SQL程序代码
代码语言:javascript复制create function GetMax(
@num1 int,
@num2 int,
@num3 int,
@num4 int
)
returns int
as
begin
declare @str varchar(20);
declare @temp table(n varchar(20));
set @str='';
insert into @temp
select @num1 union all
select @num2 union all
select @num3 union all
select @num4
select @str = @str n from @temp order by n desc;
return cast(@str as int)
end
进行测试,OK,确认过眼神,答案确实没有问题。
3. 结果显示
二、写一个存储过程AreYouFat
1. 具体要求
1)输入:体重(单位是公斤),身高(单位是米)
2)输出:提示信息
体重过低,提示:您的体型过轻,请加强营养
体重正常,提示:您的体型完全正常,请注意保持
超重,提示:您的体型偏胖,请注意饮食
肥胖,提示:你的体型超重,请注意节食
3)返回值:BMI值 = 体重 / 身高(米)的平方
实现如下输出
2. T-SQL程序代码
代码语言:javascript复制create procedure AreYouFat(
@weight float,
@height float,
@mess varchar(100) output,
@bmi float output
)
as
begin
set @mess=''
set @bmi = @weight/(@height*@height)
if(@bmi<18.5)
set @mess='你的体型过轻,请加强营养'
else if(@bmi>=18.5 and @bmi<=23.9)
set @mess='你的体型正常,请注意保持'
else if(@bmi>=24 and @bmi<=27.9)
set @mess='你的体型偏胖,请注意饮食'
else
set @mess='你的体型超重,请注意节食'
end
/* 测试 */
go
declare @mess varchar(50)
declare @bmi float
exec dbo.AreYouFat 60.0,1.78, @mess output,@bmi output
print '身高体重指数是: ' cast(@bmi as varchar(20))
print '我给你的建议是: ' @mess
go