sql server 函式根據分隔符號拆分字元
阿新 • • 發佈:2019-01-01
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
(
@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,'/')