首页 > 数据库技术 > 详细

sqlserver2008 拆分字符串

时间:2016-02-07 00:11:34      阅读:274      评论:0      收藏:0      [点我收藏+]
--说明:例如,将下列数据

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

sqlserver2008 拆分字符串

原文:http://www.jb51.net/article/18453.htm

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!