子串并将前导零添加到字符串值

时间:2014-08-14 13:46:01

标签: tsql sql-server-2008-r2 substring

大家好 - 我需要一些帮助,将前导零加前缀为字符串。

我在论坛中浏览了一下,但没有找到适合我情景的任何内容。

列中的字符串采用以下格式:'INV-ACC-180某些描述等'

'INV-ACC-180'位总是相同的格式,而描述可能会有所不同。

挑战是'180'。它需要是4个前导零,所以它显示为0180.即'INV-ACC-0180一些描述等'

某些记录可能看起来像'INV-ACC-80某些描述等'。在这种情况下,新的正确格式应该是'INV-ACC-0080一些描述等'

非常感谢提前!

1 个答案:

答案 0 :(得分:2)

180是否存储为单独的值? 在这种情况下,您使用:

创建0180
RIGHT('0000' + mynum, 4)

如果完整的字符串是输入:

‘INV-ACC-' + RIGHT('0000'+substring(myinput,9,charindex(' ',myinput)-9),4) +substring(myinput,charindex(' '),1000)