1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
   | CREATE FUNCTION dbo.FC_U_SPLIT( 
   @pi_List VARCHAR(8000),           
   @pi_Delimiter VARCHAR(8000) = ',' 
   )
   RETURNS @List TABLE (Item VARCHAR(8000))
   BEGIN
    DECLARE @sItem VARCHAR(8000)
	WHILE CHARINDEX(@pi_Delimiter,@pi_List,0) <> 0 
	BEGIN 
	   SET @sItem = RTRIM(LTRIM(SUBSTRING(@pi_List,1,CHARINDEX(@pi_Delimiter,@pi_List,0)-1)));  
	   SET @pi_List = RTRIM(LTRIM(SUBSTRING(@pi_List,CHARINDEX(@pi_Delimiter,@pi_List,0)+LEN(@pi_Delimiter),LEN(@pi_List)))); 
	   IF LEN(@sItem) > 0  
	      INSERT INTO @List (Item) VALUES (@sItem);   
	END; 
	IF LEN(@pi_List) > 0 
	   INSERT INTO @List (Item) VALUES (@pi_List);  
	RETURN; 
END
GO | 
Partager