首页 > 解决方案 > 将我的 mssql 查询变成结构化的 xml 结果集

问题描述

现在我有一个简单的查询,可以将我的 sql 结果转换为 XML,但是它并没有按照我想要的方式进行。这是我的查询

 select top 4 id,email from [user] where len(email) > 5

 for xml raw, ROOT('MyRoot')

这是下面的结果

<MyRoot>
<row id="7" email="test1@gmail.com" />
<row id="8" email="test2@gmail.com" />
<row id="9" email="test3@gmail.com" />
<row id="10" email="test4@gmail.com" />
</MyRoot>

我想将该结果集更改为此

   <MyRoot>
   <row> <id>7</id> <email>test1@gmail.com</email> </row>
   <row  <id>8</id> <email>test2@gmail.com</email> </row>
   <row  <id>9</id> <email>test3@gmail.com</email> </row>
   <row <id>10</id> <email>test4@gmail.com</email> </row>
   </MyRoot>

任何帮助,将不胜感激 。我已经浏览过这里,因为我是新手,所以找不到任何东西。

标签: sqlsql-serverxml

解决方案


select top 4 id,email from [user] where len(email) > 5
for xml raw, elements, ROOT('MyRoot') --columns as elements instead of attributes(default)

推荐阅读