理解sql server STUFF函數


STUFF函數 STUFF(<character_expression>,<開始>,<長度>,<character_expression>)

在給定字符串(<character_expression>)找到指定的位置(<開始>) 然后替換指定的字符串(<character_expression>) 如果字符為零 則為插入,

如果長度超長 則刪除指定位置之后(包含指定位置)的所有字符串 並且替換為指定的字符串(<character_expression>)

例1:

DECLARE @str VARCHAR(20)='I szl'
DECLARE @tempstr VARCHAR(20)=' am '
SELECT STUFF(@str,CHARINDEX(' ',@str),1,@tempstr) AS name

STUFF更多的是配合FOR XML PATH使用

例子:

SELECT STUFF(
(SELECT    ';'+exam_item_name from applysheet_list where   applysheet_id ='3217487'FOR XML PATH('')),
 1,
 1,
 '')  

去掉多拼接的第一個分號; 此配合真的是巧妙。

 


免責聲明!

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



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