MySql - спосіб оновити частину рядка?


103

Я шукаю спосіб оновити лише частину рядка за допомогою MySQL-запиту.

Наприклад, якщо у мене є 10 записів, що містять 'рядок' як частину значення поля (тобто 'щось / рядок', 'щось / stringlookhere', 'щось / string / etcetera', чи є спосіб змінити "рядок 'до' іншого значення 'для кожного рядка за допомогою одного запиту, щоб результат був' щось / іншезначення ',' щось / іншезначеннядесь ',' щось / рядок / тощо), чи є спосіб змінити 'іншезначення'

Відповіді:


231

Я думаю, що це має спрацювати:

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.