您好,登錄后才能下訂單哦!
FOR XML PATH的作用就是將查詢結(jié)果以XML形式展示,但是通過(guò)FOR XML PATH可以簡(jiǎn)化我們的查詢語(yǔ)句,并實(shí)現(xiàn)以前一些需要借助函數(shù)才能實(shí)現(xiàn)的功能,如將查詢結(jié)果以字符串的形式進(jìn)行拼接。
1、把查詢的結(jié)果轉(zhuǎn)換為XML文件,TestTable表記錄如下
FID FName FSex
1 張三 男
2 李四 男
3 王五 男
4 趙小花 女
5 蘇××× 女
6 周小萌 女
包含for xml path的SQL語(yǔ)句如下
select FID,FName,FSex from TestTable for xml path
執(zhí)行SQL語(yǔ)句后的結(jié)果為
<row> <FID>1</FID> <FName>張三</FName> <FSex>男</FSex> </row> <row> <FID>2</FID> <FName>李四</FName> <FSex>男</FSex> </row> <row> <FID>3</FID> <FName>王五</FName> <FSex>男</FSex> </row> <row> <FID>4</FID> <FName>趙小花</FName> <FSex>女</FSex> </row> <row> <FID>5</FID> <FName>蘇×××</FName> <FSex>女</FSex> </row> <row> <FID>6</FID> <FName>周小萌</FName> <FSex>女</FSex> </row>
2、使用for xml path實(shí)現(xiàn)字段拼接
把性別是男的人名拼接起來(lái),需要的sql語(yǔ)句如下:
select ' '+FName from TestTable where FSex='男' for xml path('')
sql語(yǔ)句執(zhí)行后的結(jié)果為: 張三 李四 王五。這樣就實(shí)現(xiàn)了吧查詢結(jié)果拼接的目的了。
3、在sql的查詢中,一般使用相關(guān)子查詢的方式,實(shí)現(xiàn)把拼接的結(jié)果輸出的sql結(jié)果集中。如果字符串的拼接使用相關(guān)字符(|,)進(jìn)行拼接的話,通常配合stuff函數(shù)進(jìn)行操作。stuff函數(shù)的使用方法參照我的另一篇博客《SQL Server stuff函數(shù)的用法》。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。