- SET ANSI_NULLS ON
- GO
-
- SET QUOTED_IDENTIFIER ON
- GO
-
- -- =============================================
- -- Author: Insus.NET
- -- Create date: 2019-05-13
- -- Update date: 2019-05-13
- -- Description: 删除字符串前导的零
- -- =============================================
- CREATE FUNCTION [dbo].[svf_TrimLeadingZero]
- (
- @InputString NVARCHAR(MAX)
- )
- RETURNS NVARCHAR(MAX)
- AS
- BEGIN
- DECLARE @position INT = 1, @len INT = LEN(@InputString)
- DECLARE @trimString NVARCHAR(MAX) = SUBSTRING(@InputString,@position, @len)
-
- WHILE @position <= @len
- BEGIN
- DECLARE @d NVARCHAR(2) = SUBSTRING(@InputString, @position, 1)
- IF LEN(ISNULL(@d,N'')) > 0 AND (@d LIKE '%[^0-9]%' OR @d > 0)
- BEGIN
- SET @trimString = SUBSTRING(@InputString,@position, @len)
- BREAK;
- END
- SET @position = @position + 1
- END
- RETURN @trimString
- END
- GO