- 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_Leave_A_Space]
- (
- @InputString NVARCHAR(MAX)
- )
- RETURNS NVARCHAR(MAX)
- AS
- BEGIN
- DECLARE @Index INT = 1
- DECLARE @CurrentChar CHAR(1)
- DECLARE @PreviousChar CHAR(1)
- DECLARE @Str NVARCHAR(MAX) = N''
-
- WHILE @Index <= LEN(@InputString)
- BEGIN
- SET @CurrentChar = SUBSTRING(@InputString, @Index, 1)
- SET @PreviousChar = SUBSTRING(@InputString, @Index - 1, 1)
- IF @CurrentChar != ' ' OR @CurrentChar != @PreviousChar
- SET @Str = @Str + CAST(@CurrentChar AS NVARCHAR(MAX))
- SET @Index = @Index + 1
- END
- RETURN @Str
- END
- GO