DECLARE @intFlag INT SET @intFlag = 1 UPDATE #temp_patrons set @intFlag = [order] = @intFlag + 1 IF @intFlag = 3 BEGIN SET @intFlag = 1 END
EX. | order | | 1 | | 2 | | 3 | | 1 | | 2 | | 3 |
SET @intFlag = @intFlag + 1 IF (@intFlag = 3) SET @intFlag = 1 UPDATE #temp_patrons SET [order] = @intFlag
DECLARE @test TABLE ([order] INT) DECLARE @intFlag INT, @loopCount INT SELECT @intFlag = 0, @loopCount = 0 WHILE (@loopCount < 6) BEGIN SET @intFlag = @intFlag + 1 IF (@intFlag > 3) SET @intFlag = 1 INSERT INTO @test SELECT @intFlag SET @loopCount = @loopCount + 1 END SELECT * FROM @test
UPDATE x SET x.[Order] = x.NewOrder FROM (SELECT [Order], ((ROW_NUMBER() OVER(ORDER BY myOrderingColumnName) - 1) % 3) + 1 AS NewOrder FROM MyTable) x;
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)