SQL自学快速突破教程 之逻辑判断

 

输出语句
print '服务器名称:'+@@servername
select @@servername as '服务器名称'
print '当前错误号'+convert (varchar(5),@@error)

逻辑控制语句
语法:
if(条件)
语句或语句块
else
语句或语句块
如果有多条语句,需要使用语句块,语句块使用 begin...end 表示,其作用类似于C语言的“{}”符号
例: declare @myavg float
select @myavg=avg(writtenExam) from stuMarks
print '本班平均分'+convert(varchar(5),@myavg)
if(@myavg>70)
begin
print '本班成绩的前3名为'
select top 3 * from stuMarks order by writtenExam desc
end
else
begin
print '本版成绩的后3名为'
select top 3 * from stuMarks order by writtenExam
end

WHILE 循环语句
可以在 while 循环中使用 continue 和 break 关键字来控制语句的执行
语法: while(条件)
语句或语句块
[ break ]
同C语言一样,也可以使用 break 关键字从最内层的 while 循环中退出
例: select * from stuMarks
declare @n int
while(1=1) --条件永远成立
begin
select @n = count(*) from stuMarks where writtenExam<60 --统计不及格人数
if(@n>0)
update stuMarks set writtenExam=writtenExam+2 --每人加2分
else
break --退出循环
end
print '加分后的成绩如下:'
select * from stuMarks

CASE 多分支语句
语法: case
when 条件1 then 结果1
when 条件2 then 结果2
[ else 其他结果 ]
end
例: select * from stuMarks --原始成绩
print 'ABCDE五级显示成绩如下:'
select stuNo,成绩=case
when writtenExam < 60 then 'E'
when writtenExam between 60 and 69 then 'D'
when writtenExam between 70 and 79 then 'C'
when writtenExam between 80 and 89 then 'B'
else 'A'
end
from stuMarks

批处理语句
“GO”是批处理的标志
GO 关键字标志着批处理的结束
批处理可以提高语句执行的效率


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值