FOR XML PATH('')函数用法
1. 如下表:
2. 转换xml
1
|
select name from zz FOR XML PATH( 'root' ); |
1
|
ps: FOR XML PATH( 'root' )中root是xml根节点。<br><br><br><br> |
3. 加个分隔符和去掉根节点。
1
|
select '、' + name from zz FOR XML PATH( '' ); |
4. 配合stuff函数使用,去掉第一个分隔符号。
1
|
select STUFF((select '、' + name from zz FOR XML PATH( '' )), 1 , 1 , '' ); |
5. STUFF ( character_expression , start , length ,character_expression )
character_expression:字符数据
start :指定删除和插入的开始位置
length :指定要删除的字符数
character_expression : 替换start 到 length 的字符数据
自己动手测试一番的记录。
----读取字段名
select STUFF((
select ',' + name from
(
select a.name from syscolumns a,systypes b where a.id=object_id('STK_BALA_GEN') and a.xtype=b.xtype---需要替换表名
and b.name!='text' and a.name not in ('SEQ','mtime','CTIME')---剔除不需要对比的字段 ,过滤掉TEXT 字段
)a FOR XML PATH(''))
,1,1,'')