MySql-문자열 부분을 업데이트하는 방법?


103

MySQL 쿼리를 통해 문자열의 일부만 업데이트하는 방법을 찾고 있습니다.

예를 들어 필드 값의 일부로 'string'을 포함하는 10 개의 레코드가있는 경우 (예 : 'something / string', 'something / stringlookhere', 'something / string / etcetera', 'string'을 변경할 수있는 방법이 있습니까? '하나의 쿼리를 통해 각 행에 대해'anothervalue '로, 결과가'something / anothervalue ','something / anothervaluelookhere ','something / string / etcetera '가되도록'anothervalue '를 변경할 수있는 방법이 있습니까?

답변:


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%'
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.