MySql - Maneira de atualizar parte de uma string?


103

Estou procurando uma maneira de atualizar apenas uma parte de uma string por meio de consulta MySQL.

Por exemplo, se eu tiver 10 registros, todos contendo 'string' como parte do valor do campo (ou seja, 'algo / string', 'alguma coisa / stringlookaqui', 'alguma coisa / string / etcetera', há uma maneira de alterar 'string 'para' outro valor 'para cada linha por meio de uma consulta, de modo que o resultado seja' algo / outro valor ',' alguma coisa / outro valor aqui ',' algo / string / etcetera ', há uma maneira de alterar' outro valor '

Respostas:


231

Eu acho que isso deve funcionar:

UPDATE table
SET field = REPLACE(field, 'string', 'anothervalue')
WHERE field LIKE '%string%';

26
UPDATE `table` SET `field` = REPLACE(`field`, 'string', 'anothervalue')

14

Use o LIKEoperador para encontrar as linhas de seu interesse e atualize-as usando a REPLACEfunção.

Por exemplo:

UPDATE table_name SET field_name = REPLACE(field_name,'search','replace') WHERE field_name LIKE '%some_value%'

0

Algo assim funciona de alguma forma?

update table_name
set column_name = replace(column_name, 'string%', 'string') 
where column_name like '%string%'
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.