web-dev-qa-db-fra.com

SQL Server recherche et remplace un mot spécifique dans toutes les lignes d'une colonne spécifique

J'ai une table TblKit qui a des colonnes Id et Number. Id est primary key de type int et Number est varchar(50).

Les données dans la table ressemblent à ceci:

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

Je veux remplacer toutes les lignes de KIT% Par CH dans le champ numérique. La sortie souhaitée est comme

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

J'ai essayé cette requête de mise à jour:

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

Mais cependant cela ne fonctionne pas.

Quelqu'un peut-il m'aider à ce sujet?

Merci..

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

ou simplement ceci si vous êtes sûr de ne pas avoir de valeurs comme celle-ci CKIT002

UPDATE tblKit
SET number = REPLACE(number, 'KIT', 'CH')
98
John Woo