MySql - Cách cập nhật một phần của chuỗi?


103

Tôi đang tìm cách cập nhật chỉ một phần của chuỗi thông qua truy vấn MySQL.

Ví dụ: nếu tôi có 10 bản ghi, tất cả đều chứa 'string' như một phần của giá trị trường (tức là 'something / string', 'something / stringlookhere', 'something / string / etcetera', có cách nào để thay đổi 'chuỗi không "thành" giá trị khác "cho mỗi hàng thông qua một truy vấn, để kết quả là" cái gì đó / giá trị khác "," cái gì đó / khácvaluelookhere "," cái gì đó / chuỗi / etcetera ", có cách nào để thay đổi" giá trị khác "

Câu trả lời:


231

Tôi nghĩ rằng điều này sẽ làm việc:

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


14

Sử dụng LIKEtoán tử để tìm các hàng mà bạn quan tâm và cập nhật chúng bằng REPLACEhàm.

Ví dụ:

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

0

Một cái gì đó như thế này hoạt động theo bất kỳ cách nào?

update table_name
set column_name = replace(column_name, 'string%', 'string') 
where column_name like '%string%'
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookie và Chính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.