SQL Server:使用 FOR XML PATH 嵌套元素

编程入门 行业动态 更新时间:2024-10-28 12:20:06
本文介绍了SQL Server:使用 FOR XML PATH 嵌套元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我想嵌套我的每个 XML 元素.

I want to nest each of my XML elements.

以下面的例子为例:

DECLARE @TempTable TABLE ( [Column1] char(10), [Column2] char(10) ); INSERT INTO @TempTable([Column1], [Column2]) VALUES ('some value', 'some value'), ('some value', 'some value'), ('some value', 'some value'), ('some value', 'some value') SELECT ( SELECT * FROM @TempTable FOR XML PATH('Row'), TYPE) FOR XML PATH('ParentRow'), ROOT('Root')

这将返回以下 XML:

Which will return the following XML:

<Root> <ParentRow> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> </ParentRow> </Root>

这不是我想要格式化 XML 的方式.相反,我希望每个 元素都用一个 元素包裹,如下所示:

Which is not the way I want the XML to be formatted. Rather I want each <Row> element to be wrapped with a <ParentRow> element like below:

<Root> <ParentRow> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> </ParentRow> <ParentRow> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> </ParentRow> <ParentRow> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> </ParentRow> <ParentRow> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> </ParentRow> </Root>

对这些人有什么帮助吗?

Any help with this guys?

推荐答案

好的,这是代码.

DECLARE @TempTable TABLE ( [Column1] char(10), [Column2] char(10) ); INSERT INTO @TempTable([Column1], [Column2]) VALUES ('some value', 'some value'), ('some value', 'some value'), ('some value', 'some value'), ('some value', 'some value') SELECT ( SELECT ( SELECT T1.* FOR XML path('') ,root('Row') ,type ) FROM @TempTable AS T1 FOR XML path('ParentRow') ,type ) FOR XML path('Root')

这是输出.

<Root> <ParentRow> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> </ParentRow> <ParentRow> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> </ParentRow> <ParentRow> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> </ParentRow> <ParentRow> <Row> <Column1>some value</Column1> <Column2>some value</Column2> </Row> </ParentRow> </Root>

祝你好运...

更多推荐

SQL Server:使用 FOR XML PATH 嵌套元素

本文发布于:2023-10-19 00:10:41,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1505839.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:嵌套   元素   Server   SQL   PATH

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!