SQL最好的Split函数

CREATE FUNCTION dbo.Split
(
    
@RowData nvarchar(2000),
    
@SplitOn nvarchar(5)
)  
RETURNS @RtnValue table 
(
    Id 
int identity(1,1),
    Data 
nvarchar(100)

AS  
BEGIN 
    
Declare @Cnt int
    
Set @Cnt = 1

    
While (Charindex(@SplitOn,@RowData)>0)
    
Begin
        
Insert Into @RtnValue (data)
        
Select 
            Data 
= ltrim(rtrim(Substring(@RowData,1,Charindex(@SplitOn,@RowData)-1)))

        
Set @RowData = Substring(@RowData,Charindex(@SplitOn,@RowData)+1,len(@RowData))
        
Set @Cnt = @Cnt + 1
    
End
    
    
Insert Into @RtnValue (data)
    
Select Data = ltrim(rtrim(@RowData))

    
Return
END


原文参考:http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=50648

原文地址:https://www.cnblogs.com/andy65007/p/1755015.html