REPLACE: 用另一个字符串值替换出现的所有指定字符串值。

语法:REPLACE ( expression , split , replacement )。

参数说明

  1. expression:要搜索的字符串表达式。expression 可以是字符或二进制数据类型。
  2. split:是要查找的子字符串(要被替换的字符串)。split可以是字符或二进制数据类型。pattern 不能是空字符串 ('')因为为空就没有意义了。
  3. replacement:替换字符串(要替换掉split的字符串)。replacement 可以是字符或二进制数据类型。

返回类型:

  1. 如果其中的一个输入参数数据类型为 NVARCHAR,则返回 NVARCHAR;否则 REPLACE 返回 VARCHAR。
  2. 如果任何一个参数为 NULL,则返回 NULL。

注释:REPLACE 根据输入的排序规则执行比较操作。若要以指定的排序规则执行比较操作,可以使用【COLLATE】,显示指定输入的排序规则。

举个例子:

比如我现在有一个字符串   【我,来,自,中,国】这么的一个字符串现在要将这个字符串的【,】(注意逗号是中文的)替换成空字符使这个字符串通顺一点,现在我们就用sql语句示范下


DECLARE @str NVARCHAR(20),@split NVARCHAR(1);
SET @str = '我,来,自,中,国';
SET @split = ',';
PRINT REPLACE(@str , @split , '')


输出结果应该是:我来自中国

在SQL上执行图如下: