字符串的UPDATE和REPLACE部分

我有一个有两列的表,IDValue。我想改变第二列字符串的一部分。

表格示例:

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

现在不需要Value字符串中的123\。我尝试了UPDATEREPLACE:

UPDATE dbo.xxx
SET Value = REPLACE(Value, '%123%', '')
WHERE ID <= 4

当我执行脚本时,SQL Server不报告错误,但它也不更新任何东西。为什么呢?

1170047 次浏览

尝试如下所示删除%字符

UPDATE dbo.xxx
SET Value = REPLACE(Value, '123', '')
WHERE ID <=4

你不需要在REPLACE中使用通配符-它只会找到你为第二个参数输入的字符串,所以下面应该可以工作:

UPDATE dbo.xxx
SET Value = REPLACE(Value, '123', '')
WHERE ID <=4

如果要替换的列类型是textntext,则需要将其强制转换为nvarchar

UPDATE dbo.xxx
SET Value = REPLACE(CAST(Value as nVarchar(4000)), '123', '')
WHERE ID <=4

为了让查询在不是每一行都需要更新的大表中运行,你也可以选择只更新要修改的行:

UPDATE dbo.xxx
SET Value = REPLACE(Value, '123', '')
WHERE ID <= 4
AND Value LIKE '%123%'

你有一个表,其中有七个字符的日期代码

"32-1000"

现在你想要替换所有

"32-"

"14-"

您必须运行的SQL查询是

Update Products Set Code = replace(Code, '32-', '14-') Where ...(Put your where statement in here)
CREATE TABLE tbl_PersonalDetail
(ID INT IDENTITY ,[Date] nvarchar(20), Name nvarchar(20), GenderID int);


INSERT INTO Tbl_PersonalDetail VALUES(N'18-4-2015', N'Monay', 2),
(N'31-3-2015', N'Monay', 2),
(N'28-12-2015', N'Monay', 2),
(N'19-4-2015', N'Monay', 2)


DECLARE @Date Nvarchar(200)


SET @Date = (SELECT [Date] FROM Tbl_PersonalDetail WHERE ID = 2)


Update Tbl_PersonalDetail SET [Date] = (REPLACE(@Date , '-','/')) WHERE ID = 2

您应该使用下面的更新查询

UPDATE dbo.xxx SET Value=REPLACE(Value,'123\','') WHERE Id IN(1, 2, 3, 4)


UPDATE dbo.xxx SET Value=REPLACE(Value,'123\','') WHERE Id <= 4

上面的任何一个查询都可以工作。

对于任何想要替换你的脚本的人。

< p > <代码>更新dbo。[TABLE_NAME] set COLUMN_NAME= replace(COLUMN_NAME, 'old_value', 'new_value') where COLUMN_NAME like %CONDITION% < /代码> < / p >

查询:

UPDATE tablename
SET field_name = REPLACE(field_name , 'oldstring', 'newstring')
WHERE field_name LIKE ('oldstring%');

替换为波斯语单词

UPDATE dbo.TblNews
SET keyWords = REPLACE(keyWords, '-', N'،')
< p >帮助: dbo。TblNews——表名

关键字——字段名