字符串拆分爲一個表

因需求,需要將此格式的數據轉換:

 

標籤;1;R01:打點;2;IC1,IC2:注膠;1;IC2

變更爲:


標籤 1 R01
打點 2 IC1,IC2
注膠 1 IC2

 

 

 


寫法如下:


  declare @s   varchar(8000)
  declare @t varchar(20)
  declare @str varchar(200)
  set @str=''
  set @s='標籤;1;:打點;2;IC1,IC2:注膠;1;IC2'
  set @s=@s+':'
  while charindex(':',@s)>0

  begin  
      select @t= substring(@s,1,charindex(':',@s)-1)
      select @s=substring(@s,charindex(':',@s)+1,len(@s))
      select @str=@str+'select '''+replace(@t,';',''',''')+'''union all '
  end  
select @str=substring(@str,1,len(@str)-9)
print @str
exec (@str)
/*
標籤 1 R01
打點 2 IC1,IC2
注膠 1 IC2
*/


 

發佈了41 篇原創文章 · 獲贊 1 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章