关于xml 字段的操作

goodhy 2008-12-25 02:31:54
有一个table A ,其中有一个xml字段 data,里面的内容如:<ids><id>1</id><id>2<id></ids>,另外有一个id字段,能不能通过一个sql语句,返回如下结果:

id data
-------------------------------
11 <ids><id>1</id><id>2<id></ids>,


==>

id data
-------------
11 1
11 2


望高手赐教
...全文
71 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
goodhy 2008-12-25
  • 打赏
  • 举报
回复
thanks,型男
fcuandy 2008-12-25
  • 打赏
  • 举报
回复
DECLARE @a TABLE(id INT,data XML)
INSERT @a SELECT 11,'<ids><id>1</id><id>2</id></ids>'

SELECT a.id,b.id data_id FROM @a a
CROSS APPLY
(
SELECT id = t.x.value('.','varchar(100)') FROM a.data.nodes('//id') AS t(x)
) b
/*
id data_id
----------- --------
11 1
11 2

*/

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧