1.for xml path(''),将多行数据拼接成一个xml格式子串
2.stuff(string,index,length,otherstring),删除指定长度的字符,并插入另一组字符
实例:
创建表create table Pro_List(pro_no nvarchar(50))
1.
SELECT distinct top 10 Pro_No as z from Pro_List for xml path('p')
输出:<p><Pro_No>100009</Pro_No></p><p><Pro_No>1011010</Pro_No></p><p><Pro_No>1011050</Pro_No></p><p><Pro_No>1011062</Pro_No></p><p><Pro_No>1011065</Pro_No></p><p><Pro_No>1011078</Pro_No></p><p><Pro_No>1011081</Pro_No></p><p><Pro_No>1011088</Pro_No></p><p><Pro_No>1011089</Pro_No></p><p><Pro_No>1011105</Pro_No></p>
2.
SELECT distinct top 10 Pro_No as z from Pro_List for xml path('p')
输出:
<p><z>100009</z></p><p><z>1011010</z></p><p><z>1011050</z></p><p><z>1011062</z></p><p><z>1011065</z></p><p><z>1011078</z></p><p><z>1011081</z></p><p><z>1011088</z></p><p><z>1011089</z></p><p><z>1011105</z></p>
3.
SELECT distinct top 10 Pro_No as z from Pro_List for xml path('')
输出:
<z>100009</z><z>1011010</z><z>1011050</z><z>1011062</z><z>1011065</z><z>1011078</z><z>1011081</z><z>1011088</z><z>1011089</z><z>1011105</z>
4.
SELECT STUFF((SELECT distinct top 10 Pro_No from Pro_List for xml path('')),1,0,'')
输出:
<Pro_No>100009</Pro_No><Pro_No>1011010</Pro_No><Pro_No>1011050</Pro_No><Pro_No>1011062</Pro_No><Pro_No>1011065</Pro_No><Pro_No>1011078</Pro_No><Pro_No>1011081</Pro_No><Pro_No>1011088</Pro_No><Pro_No>1011089</Pro_No><Pro_No>1011105</Pro_No>
5.
SELECT STUFF((SELECT distinct top 10 ','+Pro_No from Pro_List for xml path('')),1,1,'')
输出:
100009,1011010,1011050