在第一篇的时候,如果使用For XML Auto,返回的XML里,所以的字段是一个节点的属性。我们如何把字段变成节点呢?这就要使用For XML Path('每组节点的父节点名字')。
测试table: Users
1 | userid | int |
2 | firstname | varchar(20) |
3 | lastname | varchar(20) |
测试语句:
select * from Users for XML Path("User")
返回的XML是
<User>
<userid>1</userid>
<firstname>Michael</firstname>
<lastname>Brad</lastname>
</User>
<User>
<userid>2</userid>
<firstname>Judy</firstname>
<lastname>Smart</lastname>
</User>
和第二篇写的root元素。如果你想加个root元素。语句如下
select * from Users for XML Path("User"), Root('Users')
返回的XML就是:
<Users>
<User>
<userid>1</userid>
<firstname>Michael</firstname>
<lastname>Brad</lastname>
</User>
<User>
<userid>2</userid>
<firstname>Judy</firstname>
<lastname>Smart</lastname>
</User>
</Users>