
CREATE FUNCTION dbo.Parsecsvstr (@list VARCHAR(500))
returns @tbl TABLE (
str VARCHAR(20))
AS
BEGIN
DECLARE @valuelen INT,
@pos INT,
@nextpos INT
SELECT @pos = 0,
@nextpos = 1
WHILE @nextpos > 0
BEGIN
SELECT @nextpos = Charindex(',', @list, @pos + 1)
SELECT @valuelen = CASE
WHEN @nextpos > 0 THEN @nextpos
ELSE Len(@list) + 1
END - @pos - 1
INSERT @tbl
(str)
VALUES(Substring(@list, @pos + 1, @valuelen))
SELECT @pos = @nextpos
END
RETURN
END



by: 发表于:2017-09-22 09:44:08 顶(0) | 踩(0) 回复
??
回复评论