CREATE FUNCTION dbo.tvfParseDelimitedString ( @S NVARCHAR(MAX) -- Delimited input string ,@Split CHAR(1) -- Delimiter used for the input string )RETURNS @Table TABLE ( [ID] INT NOT NULL IDENTITY(1,1) ,[Value] NVARCHAR(MAX) NULL ,PRIMARY KEY ([ID]) ,UNIQUE ([ID]) )BEGIN DECLARE @X XML SET @X = CONVERT(XML,'<root><s>' + REPLACE(@S,@Split,'</s><s>')+'</s></root>') INSERT INTO @Table SELECT T.c.value('.','NVARCHAR(MAX)') AS [Value] FROM @X.nodes('/root/s') T (c) RETURN /* SELECT [Value] FROM dbo.tvfParseDelimitedString(N'1,AAA,4,BB,777,XYZ',',') WHERE [ID] > 0 */ENDGO