SQL Server查找并替换特定列的所有行中的特定单词

时间:2012-11-23 06:20:37

标签: sql sql-server sql-server-2008

我有一个包含TblKitId列的表NumberId primary key类型为intNumbervarchar(50)

表中的数据如下所示:

Id     Number
---    ------
1      KIT001
2      KIT002 
3      DMB001
4      DM002
5      KIT003

我想在数字字段中将KIT%的所有行替换为CH。所需的输出就像

Id     Number
---    ------
1      CH001
2      CH002 
3      DMB001
4      DM002
5      CH003

我已尝试过此更新查询:

UPDATE TblKit SET Number = REPLACE(Number, N'%KIT%', 'CH') 

但是它不起作用。

任何人都可以帮我这个吗?

谢谢..

2 个答案:

答案 0 :(得分:95)

UPDATE tblKit
SET number = REPLACE(number, 'KIT', 'CH')
WHERE number like 'KIT%'

或者只是如果您确定没有像CKIT002

这样的值
UPDATE tblKit
SET number = REPLACE(number, 'KIT', 'CH')

答案 1 :(得分:-9)

您也可以导出数据库,然后使用像notepad ++这样的程序来替换单词然后输入。