2016-03-01 74 views
2

我一直在使用JavaScript本代碼,但現在想將其納入一個存儲過程:如何在Transact SQL中添加數字?

self.test.testId = 
     ('00000' + self.test.adminTestId).slice(-5) + "-" + 
     ('00000' + self.test.userTestId).slice(-5) + "-" + 
     ('00' + self.test.sequence).slice(-2); 

我想這樣做是爲了實現同樣具有:

DECLARE @TestId VARCHAR(50) 
DECLARE @AdminTestId INT 
DECLARE @UserTestId INT 
DECLARE @Seq INT 

燦任何人給我建議,我怎麼可以填充和加入「 - 」進入@TestId

+0

你能提供您有需要請的輸出結果?這將有所幫助。 – codea

+0

你想要連接或添加?如果concat可能的重複http://stackoverflow.com/questions/951320/how-to-concatenate-numbers-and-strings-to-format-numbers-in-t-sql – pordi

+0

看着Javascrit我想OP想要連接*零填充*號碼以獲得特殊號碼的格式。順便說一句:我認爲「哦,這是一個重複的」反射應該 - 至少在大多數情況下 - 不會看到答案,這是**年**之前...... – Shnugo

回答

1

這是你在找什麼?

DECLARE @AdminTestId INT=3 
DECLARE @UserTestId INT=4 
DECLARE @Seq INT=5 

DECLARE @TestId VARCHAR(50)=REPLACE(STR(@AdminTestId,5),' ','0') + '-' + REPLACE(STR(@UserTestId,5),' ','0') + '-' + REPLACE(STR(@Seq,2),' ','0'); 

SELECT @TestId; 

結果

00003-00004-05