Re: [SQL ] MS SQL 2005 請教一下變數型態轉換

看板Database作者 (總舵主)時間15年前 (2011/02/26 01:22), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《magicalko》之銘言: : DECLARE @TB2121 CHAR(5),@TB2122 VARCHAR (3),@TB2120 CHAR(10) : SET @TB2120 = 'GD01-' : SET @TB2122 = 000 : WHILE @TB2122 <= 100 : BEGIN : USE TEST06 : SET @TB2121 = @TB2120 + @TB2122 : PRINT @TB2121 + @TB2122 : 結果是 : GD01-0 : ~~ : GD01-100 : 請問怎樣才能出現 : GD01-000 : ~~ : GD01-100 : 謝謝 首先 @TB2121 CHAR(5) 長度不夠 看起來這個變數放'GD01-100'要8 迴圈條件 @TB2122沒有遞增 會變無窮迴圈 Begin要搭配End 看起來你應該是要產生 @TB2121 'GD01-'+3碼流水號 從'GD01-000'到'GD01-100'? 下列是我修改過的 @@; Declare @TB2120 nvarchar(10); Declare @TB2121 nvarchar(10); Declare @TB2122 smallint; SET @TB2120 = 'GD01-'; SET @TB2122 = 0; WHILE @TB2122 <= 100 BEGIN SET @TB2121 = @TB2120 + Right('00'+Cast(@TB2122 as nvarchar(3)),3) PRINT @TB2121 Set @TB2122 = @TB2122+1 End -- ※ 發信站: 批踢踢實業坊(ptt.cc)

03/01 15:33, , 1F
感謝指導..
03/01 15:33, 1F
※ 編輯: ChingLan326 來自: 210.66.204.147 (03/07 14:16)
文章代碼(AID): #1DP-L1mM (Database)
文章代碼(AID): #1DP-L1mM (Database)