1. 程式人生 > >sql server 函式根據分隔符號拆分字元

sql server 函式根據分隔符號拆分字元

 createFUNCTION [dbo].[Fun_SplitStr]
  (
      @originalStr      VARCHAR(8000), --要分割的字串
      @split varchar(100)  --分隔符號
  )
  RETURNS @temp TABLE(Result VARCHAR(100))
  AS
  BEGIN
      DECLARE @result AS VARCHAR(100);   --定義變數用於接收單個結果 
     
     SET @originalStr = @originalStr + @split ;  
       
     WHILE (@originalStr <> '')
     BEGIN
         SET @result = LEFT(@originalStr, CHARINDEX(@split, @originalStr, 1) -1) ;  
         
         INSERT @temp VALUES(@result) ;  
         
         --STUFF()函式用於刪除指定長度的字元,並可以在指定的起點處插入另一組字元。
         SET @originalStr = STUFF(@originalStr, 1, CHARINDEX(@split, @originalStr, 1), '');
     END 
     RETURN

 END   

案例:select * from fun_splitStr(@selectitem,'/')