请教case语句用法问题
这两段编程很相似,就是一个很简单的给成绩加评语,但是有一个运行不出来,请高手指点此为运行错误的,我刚开始学,自己编的
declare @cj float,@msg varchar(100)
set @cj=85
case
when @cj>=90 and @cj<100 then set @msg='优秀'
when @cj>=80 and @cj<90 then set @msg='良好'
when @cj>=70 and @cj<80 then set @msg='中等'
when @cj>=60 and @cj<70 then set @msg='及格'
when @cj>=0 and @cj<60 then set @msg='不及格'
else
set @msg='你输入的成绩不对,成绩应该在0~100之间'
end
print @msg
下面是运行正确的,只是把变量放在了case语句前面
declare @cj float,@msg varchar(100)
set @cj=85
set @msg=
case
when @cj>=90 and @cj<100 then '优秀'
when @cj>=80 and @cj<90 then '良好'
when @cj>=70 and @cj<80 then '中等'
when @cj>=60 and @cj<70 then '及格'
when @cj>=0 and @cj<60 then '不及格'
else
'你输入的成绩不对,成绩应该在0~100之间'
end
print @msg