CREATE FUNCTION dbo.fnSplit( @sInputList VARCHAR(
8000
),
--
List of delimited items @sDelimiter VARCHAR(
8000
)
=
'
,
'
--
delimiter that separates items)RETURNS @List TABLE (item VARCHAR(
8000
))BEGINDECLARE @sItem VARCHAR(
8000
) WHILE CHARINDEX(@sDelimiter,@sInputList,
0
)
<>
0
BEGIN SELECT @sItem
=
RTRIM(LTRIM(SUBSTRING(@sInputList,
1
,CHARINDEX(@sDelimiter,@sInputList,
0
)
-
1
))), @sInputList
=
RTRIM(LTRIM(SUBSTRING(@sInputList,CHARINDEX(@sDelimiter,@sInputList,
0
)
+
LEN(@sDelimiter),LEN(@sInputList)))) IF LEN(@sItem)
>
0
INSERT INTO @List SELECT @sItem END IF LEN(@sInputList)
>
0
INSERT INTO @List SELECT @sInputList
--
Put the last item
in
RETURNENDGO
--
Test
--
select
*
from fnSplit(
'
1,2,3,4,5,6,7,8,9,0
'
,
'
,
'
)
转载于:https://www.cnblogs.com/angleSJW/archive/2011/03/17/1986803.html
相关资源:SQL截取以逗号分隔的字符串SQL截取以逗号分隔的字符串