Sqlserver 查詢把多行內容拼成一個字符串


當使用:SELECT ','+Id FROM dbo.Test FOR XML PATH('')); //這樣讀取的數據雖然是1,2,3,4,但是仍然是xml格式,所以當數據超過2033時候,用sqldatereader或者sqldateadapter讀取數據會截斷xml文件。


此時要:SELECT STUFF((SELECT ','+Id FROM dbo.Test FOR XML PATH('')),1,1,'');//利用stuff函數將xml文件轉換為一個字符串字段。就不會截斷。

 

注: 在使用它處理數據時有的時候會把一些特殊的符號轉義掉, 如果不需要轉義請用以下方式 參考自(https://blog.csdn.net/wzy87au/article/details/68059540)

SELECT STUFF((SELECT ','+Id FROM dbo.Test FOR XML PATH(''),Type).value('.','NVARCHAR(MAX)'),1,1,'');


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM