sql string split extension method

Programmability—Table-Valued Functions
 
 
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION [dbo].[Split]
(
 @RowData nvarchar(MAX),
 @SplitOn nvarchar(5)
)   
RETURNS @ReturnValue TABLE  
(Data NVARCHAR(MAX))  
AS
BEGIN
 Declare @Counter int
 Set @Counter = 1
 While (Charindex(@SplitOn,@RowData)>0)
 Begin
  Insert Into @ReturnValue (data)
  Select Data =
      ltrim(rtrim(Substring(@RowData,1,Charindex(@SplitOn,@RowData)-1)))
  Set @RowData =
      Substring(@RowData,Charindex(@SplitOn,@RowData)+1,len(@RowData))
  Set @Counter = @Counter + 1
 End
 Insert Into @ReturnValue (data)
 Select Data = ltrim(rtrim(@RowData))
 Return
END

Use method SELECT Data FROM dbo.Split(@ProductNames,',')

  

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325648025&siteId=291194637