利用 T-SQL 變數、WHILE 迴圈、IF 條件、字串串接,在 SSMS「訊息」頁籤列印四種視覺樣式的九九乘法表。
DECLARE @I INT = 1, @J INT, @S VARCHAR(MAX)
WHILE @I < 10 BEGIN
SET @J = 1; SET @S = ''
WHILE @J <= @I BEGIN
SET @S = @S + CAST(@J AS CHAR) + '*' + CAST(@I AS CHAR) + '=' + CAST(@I*@J AS CHAR) + ' '
SET @J = @J + 1
END
PRINT @S; SET @I = @I + 1
END

DECLARE @I INT = 1, @J INT, @S VARCHAR(MAX)
WHILE @I < 10 BEGIN
SET @J = 9; SET @S = ''
WHILE @J > 0 BEGIN
IF @J > @I SET @S = @S + ' ' -- 7 空格對齊
ELSE SET @S = @S + CAST(@I AS CHAR) + '*' + CAST(@J AS CHAR) + '=' + CAST(@I*@J AS CHAR) + ' '
SET @J = @J - 1
END
PRINT @S; SET @I = @I + 1
END

DECLARE @I INT = 1, @J INT, @S VARCHAR(100)
WHILE @I < 10 BEGIN
SET @J = 1; SET @S = ''
WHILE @J < 10 BEGIN
IF @J < @I SET @S = @S + ' '
ELSE SET @S = @S + CAST(@I AS CHAR(1)) + '*' + CAST(@J AS CHAR(1)) + '=' + CAST(@I*@J AS CHAR(3)) + ' '
SET @J = @J + 1
END
PRINT @S; SET @I = @I + 1
END

DECLARE @I INT = 1, @J INT, @S VARCHAR(100)
WHILE @I < 10 BEGIN
SET @J = @I; SET @S = ''
WHILE @J < 10 BEGIN
SET @S = @S + CAST(@I AS CHAR(1)) + '*' + CAST(@J AS CHAR(1)) + '=' + CAST(@I*@J AS CHAR(3)) + ' '
SET @J = @J + 1
END
PRINT @S; SET @I = @I + 1
END

雖非實務查詢需求,但為邏輯訓練與語法熟悉的優良練習題材。