Select * from tb for xml path('')
特点:
1. 以xml形式展示查询数据。
2. 自定义数据展示类型。
实例:
1. Select * from tb for xml path
<row><id>1</id><name>小李</name><age>27</age><sex>1</sex></row><row><id>2</id><name>小丽</name><age>25</age><sex>0</sex></row><row><id>3</id><name>小赵</name><age>26</age><sex>1</sex></row><row><id>4</id><name>小王</name><age>28</age><sex>1</sex></row>
2. Select * from tb for xml path('')
<id>1</id><name>小李</name><age>27</age><sex>1</sex><id>2</id><name>小丽</name><age>25</age><sex>0</sex><id>3</id><name>小赵</name><age>26</age><sex>1</sex><id>4</id><name>小王</name><age>28</age><sex>1</sex>
3. Select * from tb for xml path('MyXml')
<MyXml><id>1</id><name>小李</name><age>27</age><sex>1</sex></MyXml><MyXml><id>2</id><name>小丽</name><age>25</age><sex>0</sex></MyXml><MyXml><id>3</id><name>小赵</name><age>26</age><sex>1</sex></MyXml><MyXml><id>4</id><name>小王</name><age>28</age><sex>1</sex></MyXml>
4. Select ' MyName '+field+' MyName ' from tb for xml path('')
MyName 小李 MyName MyName 小丽 MyName MyName 小赵 MyName MyName 小王 MyName
5. select ','+field from tb for xml path('')
,小李,小丽,小赵,小王
6. Select stuff((select ','+field from tb for xml path('')),1,1,'') from tb
name
小李,小丽,小赵,小王
小李,小丽,小赵,小王
小李,小丽,小赵,小王
小李,小丽,小赵,小王
stuff(expression1,start,length,expression2)
实例:
在第一个字符串 abcdef 中删除从第 2 个位置(字符 b)开始的3个字符,然后在删除的起始位置插入第二个字符串,从而创建并返回一个字符串。
SELECT STUFF('abcdef', 2, 3, 'string'); --结果:astringef