Ответ 1
UPDATE urls
SET url = REPLACE(url, 'domain1.com/images/', 'domain2.com/otherfolder/')
У меня есть таблица со следующими столбцами в базе данных MySQL
[id, url]
И URL-адреса похожи на:
http://domain1.com/images/img1.jpg
Я хочу обновить все URL-адреса в другом домене
http://domain2.com/otherfolder/img1.jpg
сохранение имени файла как есть.
Какой запрос я должен выполнить?
UPDATE urls
SET url = REPLACE(url, 'domain1.com/images/', 'domain2.com/otherfolder/')
UPDATE yourtable
SET url = REPLACE(url, 'http://domain1.com/images/', 'http://domain2.com/otherfolder/')
WHERE url LIKE ('http://domain1.com/images/%');
соответствующие документы: http://dev.mysql.com/doc/refman/5.5/en/string-functions.html#function_replace
Попробуйте использовать функцию REPLACE:
mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');
-> 'WwWwWw.mysql.com'
Обратите внимание, что он чувствителен к регистру.
Требование WHERE необходимо заменить ТОЛЬКО записями, которые соответствуют условию в предложении WHERE (в отличие от всех записей). Вы используете знак % для обозначения частичной строки: I.E.
LIKE ('...//domain1.com/images/%');
означает все записи, которые НАЧИНАЮТСЯ с "...//domain1.com/images/"
и имеют что-нибудь ПОСЛЕ (что %
для...)
Другой пример:
LIKE ('%http://domain1.com/images/%')
что означает все записи, которые содержат "http://domain1.com/images/"
в любой части строки...
Попробуйте это...
update [table_name] set [field_name] =
replace([field_name],'[string_to_find]','[string_to_replace]');
Во-первых, нужно проверить
ВЫБЕРИТЕ * ИЗ university
ГДЕ название курса НРАВИТСЯ '% & amp%'
Далее нужно обновить
ОБНОВЛЕНИЕ университета SET course_name = REPLACE (course_name, '& amp, & amp;') WHERE id = 1
Результаты: Engineering & Technology => Engineering & Технологии