当前位置: 首页 > 图文教程 > 数据库 > MSSQL > sqlserver2008 拆分字符串

MSSQL
SQLServer 批量插入数据的两种方法
SQLServer 通用的分区增加和删除的算法
数据库的一些常用知识
SQLServer 连接异常与解决方法小结
sqlserver 无法验证产品密匙的完美解决方案[测试通过]
sql2000 卸载后重新安装时不能安装的解决办法
SQLServer 快速备份的十种方法
sqlserver 中一些常看的指标和清除缓存的方法
SQL 提权 常用命令
数据转换冲突及转换过程中大对象的处理
SQLServer 数据库开发顶级技巧
远程连接SQLSERVER 2000服务器方法
SQLserver2000 企业版 出现"进程51发生了严重的异常"错误的处理方法
SQLServer 触发器 数据库进行数据备份
SQLServer 数据库备份过程中经常遇到的九种情况
SQL 截取字符串应用代码
除MSSQL数据库text字段中恶意脚本的删方法
SQLServer CONVERT 函数测试结果
SQLServer 中.与::的区别
SQL 研究 相似的数据类型

MSSQL 中的 sqlserver2008 拆分字符串


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 78 ::
收藏到网摘: n/a

数据库 拆分字符串 --说明:例如,将下列数据
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