1

我需要更新 SQL Server 中的部分字符串。

我有:

ID   IDCityVisited   Names                    
1    10              Julya,Matheus,Donovan    
2    15              Mary,Donovan,Richard
3    20              John,Bob,Andy

我需要更新仅更改并保持所有剩余字符串不变的Names列。DonovanPaul

谢谢

4

5 回答 5

5

正如@Pondlife 指出的那样,这很有效:

UPDATE myTable
SET Names= REPLACE(Names, 'Donovan', 'Paul')
WHERE Names LIKE '%Donovan%'

谢谢大家

于 2013-02-15T19:27:19.647 回答
4

你需要更新你的表

UPDATE tblName
SET Names = REPLACE(Names,'Donovan','Paul')
于 2013-02-15T17:09:18.090 回答
2
UPDATE table SET names = REPLACE(names,'Donovan','Paul')
于 2013-02-15T17:07:38.920 回答
2

我认为您需要非常认真地学习 SQL Server 入门课程。

这就是你想要做的。一个简单的替换功能将适用于您的问题。

此查询将过滤 Id = 2 的记录,然后替换函数将用 Paul 替换 Donovan。

Update TableName
set Names = replace(Names,'Donovan','Paul')
where Id = 2
于 2013-02-15T17:07:12.660 回答
2

尝试这个:

UPDATE
Tbl
SET Names = REPLACE(Names, 'Donovan','Paul')
WHERE PATINDEX('% Donovan %', Names) != 0

替换 (Transact-SQL)

PATINDEX (Transact-SQL)

或者这个,如果你有全文索引Names

UPDATE
Tbl
SET Names = REPLACE(Names, 'Donovan','Paul')
WHERE CONTAINS(Names, 'Donovan')

包含 (Transact-SQL)

于 2013-02-15T17:09:32.833 回答