WHILE是SQL Server另一个基本流程控制元素,用于循环执行代码。WHILE后面的条件为TRUE时,循环执行指定的SQL语句或语句块,如果WHILE后的条件为FALSE或UNKNOWN时,循环终止。
演示,更详细例子,请参阅http://www.cnblogs.com/insus/articles/1914346.html:
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
--
宣告一个INT类型变量,并赋值
DECLARE @FirstCapitalLetters INT = 65
-- WHILE循环,当这个变量小于或等于90,逻辑都是为TRUE
WHILE @FirstCapitalLetters <= 90
BEGIN
-- 条件为TRUE时,把变量转化为大写字母插入至一个临时表中
INSERT INTO #TempDriveInfo ( [ DriveName ] ) VALUES ( CHAR ( @FirstCapitalLetters ))
-- 为了循环下一步,变量添加1。
SET @FirstCapitalLetters = @FirstCapitalLetters + 1
END
DECLARE @FirstCapitalLetters INT = 65
-- WHILE循环,当这个变量小于或等于90,逻辑都是为TRUE
WHILE @FirstCapitalLetters <= 90
BEGIN
-- 条件为TRUE时,把变量转化为大写字母插入至一个临时表中
INSERT INTO #TempDriveInfo ( [ DriveName ] ) VALUES ( CHAR ( @FirstCapitalLetters ))
-- 为了循环下一步,变量添加1。
SET @FirstCapitalLetters = @FirstCapitalLetters + 1
END