Use Split Function in SQL Server

  1. CREATE FUNCTION[dbo].[Split]  
  2. (  
  3.     @String varchar(max), @Delimiter char(1)  
  4. )  
  5. returns @temptable TABLE(items varchar(max))  
  6. as  
  7. begin  
  8. declare @idx int  
  9. declare @slice varchar(max)  
  10. select @idx = 1  
  11. if len(@String) < 1 or @String is null  
  12. return  
  13. while @idx != 0  
  14. begin  
  15. set @idx = charindex(@Delimiter, @String)  
  16. if @idx != 0  
  17. set @slice = left(@String, @idx - 1)  
  18. else  
  19.     set @slice = @String  
  20. if (len(@slice) > 0)  
  21.     insert into @temptable(Items) values(@slice)  
  22. set @String = right(@String, len(@String) - @idx)  
  23. if len(@String) = 0  
  24. break  
  25. end  
  26. return  
  27. end  
  28.     ==  
  29.     > Run Function == > Select * From Split('1,2'',')  
  30. ==  
  31. > Result = items  
  32. 1  
  33. 2