Вывод в цикле 3 через 3

Помогите вывести строки 3 через 3. Здесь получается 3 через 1. Что делаю не так:

DECLARE @number INT
    ,@name1 VARCHAR(10) = 'Employee'
    ,@name2 VARCHAR(10) = 'Employee_2'
SET @number = 1

WHILE @number <= 50
BEGIN
    Print CONVERT(NVARCHAR, @name1)
    SET @number = @number + 1
    IF @number % 3 = 0
    SET @number = @number + 1
        ELSE 
        Print CONVERT(NVARCHAR, @name2)
        CONTINUE
END;

ВЫВОД


Ответы (2 шт):

Автор решения: Виктор Карев

Не уверен в синтаксисе, но алгоритм - такой:

WHILE @number <= 50
BEGIN
    SET @number = @number + 1
    IF @number % 6 < 3
        Print CONVERT(NVARCHAR, @name1)
    ELSE 
        Print CONVERT(NVARCHAR, @name2)
    ENDIF
END;
→ Ссылка
Автор решения: Vitaliy Zlobin
DECLARE @i INT = 0
DECLARE @repeat INT = 3 --кол-во повторений
DECLARE @name1 VARCHAR(10) = 'Employee_1'
DECLARE @name2 VARCHAR(10) = 'Employee_2'

WHILE @i <= 50
BEGIN
    
    IF @i % (@repeat * 2) < @repeat
        PRINT @name1
    ELSE
        PRINT @name2

    SET @i += 1

END
→ Ссылка