我想替换sql Server中位置4上的特定字符, 我知道替换或案例何时,但我的问题是我只想要第四个位置字符替换,
我正在尝试
SELECT REPLACE(_NAME,0,1) AS exp FROM _EMPLOYEE
但它不会打第四个字符
例如,_name
包含IMR002001
,那么它应该是IMR012001
答案 0 :(得分:7)
使用stuff()
:
select stuff(_NAME, 4, 1, '@')
这将替换从位置4开始的长度为1的子字符串,其中字符串是第四个参数。字符串可以比被替换的字符串更长或更短。
对于你的例子:
select stuff(_NAME, 4, 1, '1')