sql 分割字符串,存到数据库

今天有个需求,将某个配置文件的经过分割存到数据库,找到现成的函数

CREATE function [dbo].[fn_split](
@inputstr nvarchar(4000), @seprator varchar(10))
returns @temp table (a nvarchar(2000))
as
BEGIN
DECLARE @i int
SET @inputstr = RTRIM(LTRIM(@inputstr))
SET @i = CHARINDEX(@seprator , @inputstr)
WHILE @i >= 1
BEGIN
INSERT @temp VALUES(LEFT(@inputstr , @i - 1))
SET @inputstr = SUBSTRING(@inputstr , @i + 1 , LEN(@inputstr) - @i)
SET @i = CHARINDEX(@seprator , @inputstr)
END
IF @inputstr <> '\'
INSERT @temp VALUES(@inputstr)
return
END

 

DECLARE @str as nvarchar(4000)
set @str = N'a|b|c|d'
SELECT * from dbo.fn_split(@str,'|')

posted @ 2015-09-16 11:17  ivy_l  阅读(258)  评论(0)    收藏  举报