1
我有以下情形:SQL服務器鑄造一個varchar到int
DECLARE @m VARCHAR(50) = '000000001'
WHILE (@m <= 10)
BEGIN
PRINT @m
-- Increment the iterator
SET @m = @m + 1
END
當我運行上面的代碼我得到:
000000001
2
3
4
5
6
7
8
9
10
的問題是,我需要的結果是爲以下:
000000001
000000002
000000003
000000004
000000005
000000006
000000007
000000008
000000009
000000010
我想八0以當它增加號碼前露面,這將有七0時數達到10餘噸的裏德以下,但它沒有工作,就會出現如你猜8周0的前10
DECLARE @m VARCHAR(50) = '1'
WHILE (@m <= 10)
BEGIN
PRINT '00000000' [email protected]
-- Increment the iterator
SET @m = @m + 1
END
基本上我想只保留9位,這聽起來愚蠢的,但我能說的(我的老闆想要這樣)。
你應該告訴你的老闆你的RDBMS是用於高效地存儲和檢索數據的。格式應留給客戶端應用程序。 – RobIII
告訴你的老闆可能有點職業限制... – Szymon
@Szymon如果告訴你的老闆**他首先僱用你的**是限制你的職業選擇,那麼你應該得到地獄。 – RobIII