探寻者飞

我正像学走路的娃娃,期盼有一天会跑、会飞翔......

博客园 首页 新随笔 联系 订阅 管理

create function split(@SourceSql varchar(8000),@Code varchar(10))

returns @temp table(sp varchar(1000))

--实现split功能 的函数

--date    :2007-7-10

--Author :sp

as 

begin

   declare @i int

   set @SourceSql=rtrim(ltrim(@SourceSql))

   set @i=charindex(@Code,@SourceSql)

   while @i>=1

   begin

      insert @temp values(left(@SourceSql,@i-1))

      set @SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i)

      set @i=charindex(@Code,@SourceSql)

   end

   if @SourceSql<>'\'

      insert @temp values(@SourceSql)

   return 

end

用法如下:

select * from dbo.split('1,2,3,4,5',',')

posted on 2007-07-11 21:22  探寻者飞  阅读(271)  评论(0编辑  收藏  举报