USE [PWM_r3] GO /****** Object: UserDefinedFunction [dbo].[Split] Script Date: 09/22/2016 11:46:24 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER FUNCTION [dbo].[Split]( @value NVARCHAR (4000), @delimiter NVARCHAR (10) ) RETURNS @retTable TABLE ([Value] NVARCHAR(4000)) BEGIN IF @value IS NULL BEGIN INSERT INTO @retTable ([Value]) VALUES (NULL) RETURN END --Initialize DECLARE @NextString NVARCHAR(4000) DECLARE @Pos INT SET @NextString = '' SET @value = @value + @delimiter --Get position of first Comma SET @Pos = charindex(@delimiter,@value) WHILE (@Pos <> 0) BEGIN SET @NextString = substring(@value,1,@Pos - 1) INSERT INTO @retTable ([Value]) VALUES (@NextString) SET @value = substring(@value,@Pos +1,len(@value)) SET @Pos = charindex(@delimiter,@value) END RETURN END