专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »数据库 » 拆分字符串:SQL Server 2005中利用xml拆分字符串序列 »正文

拆分字符串:SQL Server 2005中利用xml拆分字符串序列

来源: 发布时间:星期三, 2008年6月25日 浏览:392次 评论:0
问题:SQL Server 2005中如何利用xml拆分字符串序列?

解答:下文中介绍的方法比替换为select union all方法更为见效,并且不用考虑因为字符串过长而导致动态sql语句过长。

代码如下:

DECLARE @str varchar(1000)
DECLARE @idoc int;
DECLARE @doc xml;

 
set @str='1¦3¦4¦25'
set @doc=cast('<Root>
<item><ID>'+replace(@str,'&brvbar;','
</ID></item><item><ID>')+'</ID></item></Root>' as xml) 
EXEC sp_xml_preparedocument @Idoc OUTPUT, @doc

SELECT *   FROM OPENXML (@Idoc, '/Root/item',2)
WITH (
[ID] varchar(10)
) 
 /**//*
ID
-----------
1
3
4
25*/
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: