程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> sqlserver2008 拆分字符串

sqlserver2008 拆分字符串

編輯:關於SqlServer
--說明:例如,將下列數據

id id_value
-----------------
1 'aa,bb'
2 'aa,bb,cc'
3 'aaa,bbb,ccc'

--轉換成以下的格式
id id_value
-----------------
1 'aa'
1 'bb'
2 'aa'
2 'bb'
2 'cc'
3 'aaa'
3 'bbb'
3 'ccc'

--代碼-------------------------------------------GO
代碼如下:

create table ta
(
id int,
id_value varchar(30)
)

insert into ta
select 1,'aa,bb' union all
select 2,'aa,bb,cc' union all
select 3,'aaa,bbb,ccc'

select
top 4000 ix = identity(int, 1, 1)
into #tb
from sys.objects a, sys.objects b

select
id,
id_value = substring(id_value,ix,charindex(',',id_value + ',',ix) - ix)
FROM ta as A, #tb as B
WHERE SUBSTRING( ',' + id_value, ix, 1) = ','

drop table ta
drop table #tb
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved