理解sql server STUFF函数

STUFF函数 STUFF(,<开始>,<长度>,

在给定字符串()找到指定的位置(<开始>) 然后替换指定的字符串() 如果字符为零 则为插入,

如果长度超长 则删除指定位置之后(包含指定位置)的所有字符串 并且替换为指定的字符串(

例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,
 '')  

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

 

你可能感兴趣的:(理解sql server STUFF函数)