在本教程中,将学习如何使用SQL Server WHILE语句根据指定的条件重复执行语句块。
WHILE语句简介
WHILE语句是一个控制流语句,只要指定的值为TRUE,就重复执行语句块。
以下是WHILE语句的语法:
WHILE Boolean_expression
{ sql_statement | statement_block}
在这个语法中:
- 首先,
Boolean_expression是一个计算结果为TRUE或FALSE的表达式。 - 其次,
sql_statement | statement_block是任何Transact-SQL语句或一组Transact-SQL语句。它是使用BEGIN ... END语句定义语句块。 - 如果在进入循环时
Boolean_expression的计算结果为FALSE,则不会执行WHILE循环内的语句。 - 在WHILE循环内部,必须更改某些值以使
Boolean_expression在某些点返回FALSE。 否则,它是一个无限循环。
请注意,如果Boolean_expression包含SELECT语句,则必须将其括在括号中。
要立即退出循环的当前迭代,请使用BREAK语句。 要跳过循环的当前迭代并启动新循环,请使用CONTINUE语句。
SQL Server WHILE示例
下面举一个使用SQL Server WHILE语句的例子,以更好地理解它。
以下示例说明如何使用WHILE语句打印1到5之间的数字:
DECLARE @counter INT = 1;
WHILE @counter <= 5
BEGIN
PRINT @counter;
SET @counter = @counter + 1;
END
在这个例子中:
- 首先,声明
@counter变量并将其值设置为1。 - 在
WHILE语句的条件下,检查@counter是否小于或等于5。 如果不小于则打印@counter并将其值增加1。 经过五次迭代后,@counter累加变为6,这时WHILE子句的条件求值为FALSE,循环停止。
以下显示输出:
1
2
3
4
5
在本教程中,学习了如何使用SQL Server WHILE语句根据指定的条件重复执行语句块。
上一篇:
SQL Server存储过程
下一篇:
SQL Server用户定义函数
