SQL语句 一个简单的字符串分割函数

时间:2021-10-05 06:42:55

代码如下:


CREATE FUNCTION dbo.f_splitstr( 
@str varchar(8000) 
)RETURNS @r TABLE(id int IDENTITY(1, 1), value varchar(5000)) 
AS 
BEGIN 
/* Function body */ 
DECLARE @pos int 
SET @pos = CHARINDEX(',', @str) 
WHILE @pos > 0 
BEGIN 
INSERT @r(value) VALUES(LEFT(@str, @pos - 1)) 
SELECT 
@str = STUFF(@str, 1, @pos, ''), 
@pos = CHARINDEX(',', @str) 
END 
IF @str > '' 
INSERT @r(value) VALUES(@str) 
RETURN 

END 

select * from f_splitstr('中,国,人')