DCR/170/06
DCR/001/07
DCR/1504/07
我希望得到'/'和+1之间的字符 我的预期输出如下:
SELECT MAX(RIGHT('000'+CAST(Doc_Num+1 AS VARCHAR(4)),4)) AS NEW_RESULT FROM Dms_Table
171
002
1505
答案 0 :(得分:5)
您可以使用ParseName()
Declare @String varchar(100) = 'DCR/170/06'
Select 1+ParseName(Replace(@String,'/','.'),2)
返回
171
答案 1 :(得分:2)
这是一种方法:
select cast(substring(doc_num, 5,
charindex('/', doc_num, 5)
) as int) + 1
此特定版本假定'DCR/'
是所有字符串的开始。
您似乎明白如何用零填充值。