Сначала запишите его как оператор SELECT. Мы можем использовать функцию MySQL REPLACE
. https://dev.mysql.com/doc/refman/5.7/en/string-functions.html#function_replace
, например
SELECT t.mycol AS oldval
, REPLACE(t.mycol,'font-family: Verdana;','font-family: ''Open Sans'', sans-serif;') AS newval
-- ^ ^^ ^^ ^
FROM mytable t
WHERE t.mycol LIKE '%font-family: Verdana;%'
Обратите внимание, что одинарные кавычки в строковом литерале могут указываться двумя одинарными кавычками.
В качестве демонстрации рассмотрим:
SELECT 'It''s good' AS foo
-- ^ ^^ ^
Получив проверенное и проверенное выражение для newval, мы можем использовать это выражение в UPDATE
выражении
UPDATE mytable t
SET t.mycol = REPLACE(t.mycol,'font-family: Verdana;','font-family: ''Open Sans'', sans-serif;')
WHERE t.mycol LIKE '%font-family: Verdana;%'
Обратите внимание, что это заменит только первое вхождение строки в mycol
. Последующее выполнение найдет следующее вхождение строки поиска и заменит ее.
Также обратите внимание, что REPLACE
выполняет регистрозависимое сопоставление.