看了邹健一个函数例子,可是不知道怎么用?
--3.2.1 循环截取法
CREATE FUNCTION f_splitSTR(
@s varchar(8000), --待分拆的字符串
@split varchar(10) --数据分隔符
)RETURNS @re TABLE(col varchar(100))
AS
BEGIN
DECLARE @splitlen int
SET @splitlen=LEN(@split+ 'a ')-2
WHILE CHARINDEX(@split,@s)> 0
BEGIN
INSERT @re VALUES(LEFT(@s,CHARINDEX(@split,@s)-1))
SET @s=STUFF(@s,1,CHARINDEX(@split,@s)+@splitlen, ' ')
END
INSERT @re VALUES(@s)
RETURN
END
GO
我这样用也不行:select dbo.f_splitSTR( 'a,b,c ', ', ')
谁指点一下怎么用啊?
还有就是我的目的是想把下面的表行到下以下结果:
col
a,b
c,d,e
f,g
---结果
a
b
c
d
e
f
g
------解决方案--------------------select * from dbo.f_splitSTR( 'a,b,c ', ', ')