MS SQL While loops
SQLSimple loop
Code
Let's say we want to loop from 0 to 9:
DECLARE @i AS INT = 0
WHILE @i < 10
BEGIN
SET @i = @i + 1
PRINT @i
END
Result
This will print out every number from 1 to 10
Loop over table
Code
Let's say we have a table called #temp and we want to loop over every value:
| rnum | value | |
|---|---|---|
| 1 | 1 | Apple |
| 2 | 2 | Banana |
| 3 | 3 | Cherry |
| 4 | 4 | Date |
| 5 | 5 | Elderberry |
DECLARE @i AS INT = 0
DECLARE @fruit AS varchar(10)
WHILE @i < (SELECT COUNT(*) FROM #temp)
BEGIN
SET @i = @i + 1
SET @fruit = (SELECT [value] FROM #temp WHERE rnum=@i)
PRINT @fruit
END
Result
This will print out every value from Apple to Elderberry