首页 > 代码库 > SQL Server 中LEN函数的问题

SQL Server 中LEN函数的问题

LEN(‘T ‘) =1

LEN(‘ T‘) =2

在数据库中分解字符串时要注意,例如以‘^‘分隔‘X ^ T ‘,分解时要注意最后的‘T ‘被分解成‘T‘

可用如下的代码来进行完整的分解

SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE function [dbo].[FnsplitWithEmpty](@SourceStr varchar(8000),@StrSeprate varchar(10))returns @temp table(id int, strList varchar(1000))as begin    declare @i int    --set @SourceStr = rtrim(ltrim(@SourceStr))    set @i = charindex(@StrSeprate,@SourceStr)    declare @j int    set @j = 0    while @i>=1    begin        insert @temp values(@j,left(@SourceStr,@i-1))        set @SourceStr = substring(@SourceStr,@i+1,len(@SourceStr + x) - 1 -@i)        set @i = charindex(@StrSeprate,@SourceStr)        set @j = @j + 1    end    if @SourceStr <> ‘‘       insert @temp values(@j,@SourceStr)    return end

 

SQL Server 中LEN函数的问题