T-SQL 程序循环结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
T-SQL 程序
循环结构WHILE
1.特点:WHILE循环语句可以根据某些条件重复执行一条T-SQL语句或一个语句块。
WHILE(条件)
BEGIN
语句或语句块
END
3.调试程序:ALT+F5 启动调试,启动后F9切换断点,F10逐过程,F11逐语句
4.例题:使用循环求1-10之间的累加和
DECLARE@sum int,@i int
SET@sum=0
SET@i=1
--使用循环结构累加求和
WHILE(@i<=10)
BEGIN
SET@sum=@i+@sum
SET@i=@i+1
END
PRINT'1-10之间的累加和为:'+CAST(@sum AS varchar(4))
GO
三、CONTINUE、BREAK、RETURN关键字
1.特点:
1)CONTINUE:可以让程序跳过CONTINUE关键字后的语句,回到WHILE循环的第一
行命令。
2)BREAK:让程序完全跳出循环,结束WHILE循环的执行
3)RETURN:从查询或过程中无条件退出,RETURN语句可在任何时候,用于从过程、
批处理或语句块中退出。位于RETURN之后的语句不会被执行。
2.例题
【1】在循环中使用CONTINUE,遇到CONTINUE回到WHILE的条件判断处
求1-10之间的偶数和
DECLARE@sum int,@i int
SET@i=1
WHILE(@i<=10)
BEGIN
IF(@i%2=1)
BEGIN
SET@i=@i+1
CONTINUE
END
ELSE
BEGIN
SET@sum=@sum+@i
SET@i=@i+1
END
END--WHILE的结束
PRINT'1-10之间的偶数和为:'+CONVERT(varchar(2),@sum)
GO
【2】在循环中使用BREAK
遇到数字5退出程序。
DECLARE@i int
SET@i=1
WHILE(@i<=10)
BEGIN
IF(@i=5)
BEGIN
BREAK--退出循环结构,即使条件成立也不去判断了END
ELSE
SET@i=@i+1
END
PRINT'@i的值为:@x='+CAST(@i AS varchar(2))
GO
【3】RETURN实现退出功能
DECLARE@i int
SET@i=1
WHILE(@i<=10)
BEGIN
IF(@i=5)
BEGIN
RETURN--退出功能可以执行批处理后的代码
END
ELSE
SET@i=@i+1
END
PRINT'@i的值为:@x='+CAST(@i AS varchar(2))
GO
--执行该语句,发现没有输出,因为程序遇到RETURN后,整个批处理后面的内容不被执行,但是可以执行批处理后的代码
PRINT'我是批处理后的代码'