六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 38|回复: 0

split

[复制链接]

升级  74%

45

主题

45

主题

45

主题

秀才

Rank: 2

积分
161
 楼主| 发表于 2013-1-27 04:49:22 | 显示全部楼层 |阅读模式
create   table   #   (a   varchar(1000))     declare   @string   varchar(1000)     set   @string='(aa,aa);(bb,bb);(ccc,c);(dd,dd)'     set   @string='insert   #   select   '''+replace(@string,';','''as   str   union   all   select   ''')+''''     exec(@string)         select   *   from   #drop table # 
CREATE FUNCTION Taurus_CommonSplit_String(@split_string varchar(max), --要进行分解的字符串@tag_string varchar(10) --分解标志)RETURNS @split_table TABLE (split_value varchar(200))ASBEGINdeclare @temp_string varchar(max)declare @start_index intdeclare @end_index intwhile 1=1begin  set @start_index = 0  select @end_index = CharIndex(@tag_string,@split_string,@start_index)  if @end_index <> 0  begin   set @temp_string = Substring(@split_string,@start_index,@end_index)   if @temp_string is not null and @temp_string <> ''    insert into @split_table(split_value) values(@temp_string)   set @start_index = @end_index + 1   set @split_string = Substring(@split_string,@start_index,len(@split_string))  end  else  begin    if @split_string is not null and @split_string <> ''       insert into @split_table(split_value) values(@split_string)   break  endendRETURN END 
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表