tsql:子串替换怎么办?

phi*_*ill 4 t-sql sql-server substring

目标:我有字符串"1234432144"我只想用'10'替换前2 4'所以我会得到'1231032144'

有没有办法在tsql中执行此操作?

到目前为止,我已经提出了tsql substring()函数

substring('1234432144', 4, 2) 
Run Code Online (Sandbox Code Playgroud)

它绘制了44 ..但是如何在现有字符串中替换它?

如果我在它周围包装一个替换函数,它将替换字符串中所有出现的44.

有任何想法吗?

提前致谢.

Rob*_*Day 5

用paremeterised版本编辑.

DECLARE @myStr VARCHAR(50)
DECLARE @findStr VARCHAR(50)
DECLARE @replaceStr VARCHAR(50)

SET @myStr = '1234432144'
SET @findStr = '44'
SET @replaceStr = '10'

SELECT STUFF(@myStr, CHARINDEX(@findStr, @myStr), LEN(@findStr), @replaceStr)
Run Code Online (Sandbox Code Playgroud)