SQL替换函数替换了字符串的太多部分

时间:2019-05-15 20:34:52

标签: sql sql-server

我正在编写一条SQL Update语句来替换字符串的某些部分。我无法获得的一种情况是仅替换冒号之前的字符串的第一部分。我想简单地将值S更改为S2。

Current String: S:S:S;S:S:S
Wanted String: S2:S:S;S:S:S

我目前拥有的SQL:

UPDATE [table]
    SET [column] = REPLACE([cell], 'S:', 'S2:')
    WHERE [cell] LIKE  'S:%'

这将产生值S2:S2:S; S2:S2:S

[]中的字段是通过程序处理的变量。我只是在努力处理SQL部分。

1 个答案:

答案 0 :(得分:2)

您似乎想要STUFF()

UPDATE [table]
    SET [column] = STUFF([cell], 1, 2, 'S2:')
    WHERE [cell] LIKE  'S:%';