如何在SQL中替换字符

5 sql sql-server sql-server-2008

我想替换sql Server中位置4上的特定字符,我知道替换或大小写但我的问题是我只想要第4个位置字符替换,

我想尝试

SELECT REPLACE(_NAME,0,1) AS exp FROM _EMPLOYEE
Run Code Online (Sandbox Code Playgroud)

但它不会打第四个角色

例如,如果_name包含IMR002001那么它应该是IMR012001

Gor*_*off 7

用途stuff():

select stuff(_NAME, 4, 1, '@')
Run Code Online (Sandbox Code Playgroud)

这将替换从位置4开始的长度为1的子字符串,其中字符串是第四个参数.字符串可以比被替换的字符串更长或更短.

对于你的例子:

select stuff(_NAME, 4, 1, '1')
Run Code Online (Sandbox Code Playgroud)