使用字符串中的char修剪前导零

时间:2017-02-22 20:56:09

标签: sql sql-server function tsql trim

我需要编写一个函数来删除字符串中的第一个前导零。第一个零点的位置可以变化。

示例一:

0000900 needs to become 900

示例二:

A0000900 needs to become A900

示例三:

ABCD00090ABC0D needs to become ABCD90ABC0D

示例四:

ABC0D00090ABC0D needs to become ABCD00090ABC0D

因此,无论起始位置如何,都必须删除第一个前导零。

我试过了:

DECLARE @input VARCHAR(255)=  '0002981K0K'
SELECT SUBSTRING(@input, PATINDEX('%[^0]%', @input), LEN(@input))

但这只会导致2981K0K,这很好。但是每当我在前面添加一个非数字值时(让我们说A),查询就不会再看到第一个前导零并导致A0002981K0K

0 个答案:

没有答案