我们以/进行分割:
declare @val nvarchar(max)set @val='http://www.52mvc.com/loli/1/《山东省煤矿矿用产品行业协会章程》.doc'set @val='select '''+replace(@val,'/',''' union all select ''')+''''exec (@val)
结果:
http:
www.52mvc.com
loli
1
《山东省煤矿矿用产品行业协会章程》.doc
--也可以封成一个函数执行一下
Create function [dbo].[f_splitstr](@SourceSql varchar(8000),@StrSeprate varchar(100)) returns @temp table(F1 varchar(100)) as begin declare @ch as varchar(100) set @[email protected][email protected] while(@SourceSql<>'') begin set @ch=left(@SourceSql,charindex(',',@SourceSql,1)-1) insert @temp values(@ch) set @SourceSql=stuff(@SourceSql,1,charindex(',',@SourceSql,1),'') end return end
--测试示例 执行后下面我们就可以调用了
select dbo.split_str('6-1-2-3-4',3,'-')
结果是 6 1 2 3 4