首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL 實現四種九九乘法表:WHILE 迴圈與條件判斷列印變體

     編輯:關於SqlServer

利用 T-SQL 變數、WHILE 迴圈、IF 條件、字串串接,在 SSMS「訊息」頁籤列印四種視覺樣式的九九乘法表。

1. 左下角三角形

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

2. 右下角三角形

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

3. 右上角三角形

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

4. 左上角三角形

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

教學價值

  • 練習 T-SQL 變數宣告、迴圈控制、字串操作、格式化輸出
  • 理解巢狀迴圈邊界條件設計
  • SSMS「訊息」頁籤作為主控台輸出的實驗場

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

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved