MySQL 문자열 바꾸기
URL(ID, url)이 포함된 열이 있습니다.
http://www.example.com/articles/updates/43
http://www.example.com/articles/updates/866
http://www.example.com/articles/updates/323
http://www.example.com/articles/updates/seo-url
http://www.example.com/articles/updates/4?something=test
"업데이트"를 "뉴스"로 바꾸고 싶습니다.이거 대본으로 할 수 있어요?
UPDATE your_table
SET your_field = REPLACE(your_field, 'articles/updates/', 'articles/news/')
WHERE your_field LIKE '%articles/updates/%'
이제 행은 다음과 같습니다.
http://www.example.com/articles/updates/43
될 것이다
http://www.example.com/articles/news/43
http://www.electrictoolbox.com/mysql-find-replace-text/
네, MySQL에는 REPLACE() 함수가 있습니다.
mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');
-> 'WwWwWw.mysql.com'
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_replace
사용할 때 별칭으로 만들면 더 쉬워집니다.SELECT
SELECT REPLACE(string_column, 'search', 'replace') as url....
치환 기능은 사용할 수 있습니다.
REPLACE(str,from_str,to_str)
from_str 문자열이 to_str 문자열로 대체된 문자열 str을 반환합니다. REPLACE()
는 from_str을 검색할 때 대소문자를 구분합니다.
replace() 함수를 사용할 수 있습니다.
예:
where 조항-
update tableName set columnName=REPLACE(columnName,'from','to') where condition;
조항 없이-
update tableName set columnName=REPLACE(columnName,'from','to');
주의: 위의 쿼리는 테이블에서 직접 레코드를 업데이트하기 위해 선택 쿼리를 사용하고 테이블에서 데이터에 영향을 주지 않는 경우 다음 쿼리를 사용할 수 있습니다.
select REPLACE(columnName,'from','to') as updateRecord;
gmagio의 답변에 더하여 동적으로 필요한 경우REPLACE
그리고.UPDATE
다른 열에 따르면 다음을 수행할 수 있습니다.
UPDATE your_table t1
INNER JOIN other_table t2
ON t1.field_id = t2.field_id
SET t1.your_field = IF(LOCATE('articles/updates/', t1.your_field) > 0,
REPLACE(t1.your_field, 'articles/updates/', t2.new_folder), t1.your_field)
WHERE...
이 예에서 문자열은articles/news/
저장 장소other_table t2
사용할 필요가 없습니다.LIKE
에서WHERE
절을 클릭합니다.
REPLACE 기능은 오래된 URL 업데이트, 맞춤법 오류 수정 등 테이블 내의 텍스트를 검색 및 치환하는 데 매우 편리합니다.
UPDATE tbl_name
SET
field_name = REPLACE(field_name,
string_to_find,
string_to_replace)
WHERE
conditions;
언급URL : https://stackoverflow.com/questions/5956993/mysql-string-replace
'programing' 카테고리의 다른 글
JSON을 CSV로 변환하려면 어떻게 해야 합니까? (0) | 2022.12.09 |
---|---|
JUnit에서 regex 일치 항목 확인 (0) | 2022.12.09 |
첫 번째 컴포넌트의 함량을 초월하기 위해 반응 컴포넌트를 다른 반응 컴포넌트로 전달하려면 어떻게 해야 합니까? (0) | 2022.12.09 |
JAVA_를 사용해야 합니다.홈 포인트는 JDK 또는 JRE? (0) | 2022.10.30 |
이 SQL의 쿼리 성능 향상 (0) | 2022.10.30 |