MySql - способ обновить часть строки?


104

Я ищу способ обновить только часть строки с помощью запроса MySQL.

Например, если у меня есть 10 записей, каждая из которых содержит «строку» как часть значения поля (например, «something / string», «something / stringlookhere», «something / string / etcetera», есть ли способ изменить »строку 'to' anothervalue 'для каждой строки через один запрос, чтобы результат был' something / anothervalue ',' something / anothervaluelookhere ',' something / string / etcetera ', есть ли способ изменить' другое значение '

Ответы:


233

Я думаю, это должно сработать:

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


14

Используйте LIKEоператор, чтобы найти строки, которые вам нужны, и обновить их с помощью REPLACEфункции.

Например:

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

0

Что-то подобное вообще работает?

update table_name
set column_name = replace(column_name, 'string%', 'string') 
where column_name like '%string%'
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.