SQLServer拆分字符串的三种方法
来源:互联网 发布:淘宝网商城男装牛仔裤 编辑:程序博客网 时间:2024/04/28 11:25
use tempdb
go
--测试数据
declare @s varchar(1000)
set @s='ak47,mp5,1,23'
/*要求输出结果
S
----
ak47
mp5
1
23
*/
--3种方法对比:
--1.[朴实]动态Exec方法:
declare @s1 varchar(1000)
set @s1=right(replace(','+@s,',',''' as S union select '''),len(replace(','+@s,',',''' as S union select '''))-12)+''''
exec(@s1)
--2.[变通]表交叉方法:
select replace(reverse((left(s,charindex(',',s)))),',','') as S from(
select r,reverse(left(@s,r))+',' as s
from(
select (select count(*) from sysobjects where name<=t.name ) as r
from sysobjects t
)a where r<=len(@s)
and left(@s+',',r+1) like '%,'
)t order by r
--3.[高级]XML方法:
DECLARE @idoc int;
DECLARE @doc xml;
set @doc=cast('<Root><item><S>'+replace(@s,',','</S></item><item><S>')+'</S></item></Root>' as xml)
EXEC sp_xml_preparedocument @Idoc OUTPUT, @doc
SELECT * FROM OPENXML (@Idoc, '/Root/item',2)
WITH (
[S] varchar(10)
)
- SQLServer拆分字符串的三种方法
- SQLServer拆分字符串的三种方法
- 三种方法拆分字符串
- java三种方法拆分字符串
- [转载]java三种方法拆分字符串
- SQLServer字符串批量拆分得方法
- sqlserver字符串拆分(split)方法汇总
- SQLServer字符串批量拆分得方法
- SQLServer字符串批量拆分得方法
- sqlserver字符串拆分(split)方法汇总
- sqlserver字符串拆分(split)方法汇总
- sqlserver字符串拆分(split)方法汇总
- sqlserver字符串拆分(split)方法汇总
- sqlserver字符串拆分(split)方法汇总
- sqlserver字符串拆分(split)方法汇总
- sqlserver字符串拆分(split)方法汇总
- sqlserver字符串拆分(split)方法汇总
- sqlserver字符串拆分(split)方法汇总
- 软件项目质量管理
- Unix和Linux下C语言学习指南
- 随笔
- SQL2005 Anerlysis Service的处理维度中一个BUG的分析
- 关于ORACLE用户的创建,及赋予权限
- SQLServer拆分字符串的三种方法
- biye
- 使用Java泛型应该注意的几个地方
- 用ADO向Excel批量导入数据
- 简易的Java版HttpClient
- 析构函数和Finalize()之间的那点事
- 软件开发质量管理层次模型
- [双语阅读]哈佛大学缩减开支应对经济危机
- 软件项目质量管理经验谈