起因:項目上查詢一些數據,需要將查詢后的結果合並到一列中。
1.STUFF函數
官方api: https://docs.microsoft.com/zh-cn/sql/t-sql/functions/stuff-transact-sql?view=sql-server-2017
STUFF 函數將字符串插入到另一個字符串中。 它從第一個字符串的開始位置刪除指定長度的字符;然后將第二個字符串插入到第一個字符串的開始位置。
語法:STUFF ( character_expression【原string】, start【開始位置】 , length 【長度】, replaceWith_expression 【要插入的string】)
示例:
SELECT STUFF('abcdef', 2, 3, 'ijklmn'); GO
結果集--------- aijklmnef
2.PATH 模式通過 SELECT 查詢生成 XML,簡單使用
SELECT ProductModelID, Name FROM Production.ProductModel
WHERE ProductModelID=122 OR ProductModelID=119 FOR XML PATH;
結果:
<row> <ProductModelID>122</ProductModelID> <Name>All-Purpose Bike Stand</Name> </row>
<row> <ProductModelID>119</ProductModelID> <Name>Bike Wash</Name> </row>
STUFF函數和 PATH 模式 結合使用的案例: https://bbs.csdn.net/topics/392425148