我有一个有两列的表格,ID
and Value
。我想更改第二列中一些字符串的一部分。
表格示例:
ID Value
---------------------------------
1 c:\temp\123\abc\111
2 c:\temp\123\abc\222
3 c:\temp\123\abc\333
4 c:\temp\123\abc\444
Now the 123\
in the Value
不需要字符串。我试过UPDATE
and REPLACE
:
UPDATE dbo.xxx
SET Value = REPLACE(Value, '%123%', '')
WHERE ID <= 4
当我执行脚本时,SQL Server 不会报告错误,但也不会更新任何内容。这是为什么?
您不需要在中使用通配符REPLACE
- 它只是找到您为第二个参数输入的字符串,因此以下内容应该有效:
UPDATE dbo.xxx
SET Value = REPLACE(Value, '123', '')
WHERE ID <=4
如果要替换的列是类型text
or ntext
你需要将其转换为 nvarchar
UPDATE dbo.xxx
SET Value = REPLACE(CAST(Value as nVarchar(4000)), '123', '')
WHERE ID <=4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)