语法
STUFF ( character_expression , start , length , replaceWith_expression )
参数
character_expression
字符数据的表达式。character_expression 可以是常量、变量,也可以是字符列或二进制数据列。
start
一个整数值,指定删除和插入的开始位置。如果 start 为负或为零,则返回空字符串。如果 start 的长度大于第一个 character_expression,则返回空字符串。start 的类型可以是 bigint。
length
一个整数,指定要删除的字符数。如果 length 为负,则返回空字符串。如果 length 的长度大于第一个 character_expression,则最多可以删除到最后一个 character_expression 中的最后一个字符。如果 length 为零,则在字符串中第一个字符之前插入内容。length 的类型可以是 bigint。
replaceWith_expression
字符数据的表达式。character_expression 可以是常量、变量,也可以是字符列或二进制数据列。此表达式从 start 开始替换 length 个字符的 character_expression。如果 replaceWith_expression 为NULL,则在不插入任何内容的情况下删除字符。
示例
以下示例从第一个字符串abcdef的第2个位置 (b) 开始删除三个字符,然后在删除位置插入第二个字符串,从而创建并返回一个字符串。
复制
SELECT STUFF('abcdef', 2, 3, 'ijklmn');
下面是结果集:
复制
---------
aijklmnef
(1 row(s) affected)