Вот примеры запросов:
UPDATE cms_test SET target_id = '1' WHERE target_url LIKE '%testik/testik.html%' AND target_id = '0';
UPDATE cms_test SET target_subject = 'new' WHERE target_url LIKE '%testik/testik.html%' AND target_subject = 'testik';
UPDATE cms_test SET target_url = 'new/testik.html' WHERE target_url LIKE '%testik/testik.html%' AND target_url = 'testik/testik.html';
То есть первый меняет в ячейке target_id с 0 на 1.
Второй — target_subject меняет testik на new.
Третьей — target_url меняет testik/testik.html на new/testik.html
Получается замена идёт в трёх колонках, но в одной и тоже таблице cms_test.
Можно как-то написать один запрос вместо трёх? Подскажите пожалуйста.
UPDATE cms_test SET target_id = REPLACE(target_id, '0','1'), target_subject = REPLACE(target_subject, 'testik','new'), target_url = REPLACE(target_url, 'testik/','new/'),
WHERE target_url LIKE '%testik/testik.html%' AND target_url = 'testik/testik.html';
Как-то так
А вот это условие у вас забавное, LIKE явно лишний.
UPDATE cms_test SET target_id = REPLACE(target_id, '0','1'), target_subject = REPLACE(target_subject, 'testik','new'), target_url = REPLACE(target_url, 'testik/','new/'),
WHERE target_url LIKE '%testik/testik.html%' AND target_url = 'testik/testik.html';
в общем этот запрос заменил вообще все и устроил кашу… что то не так.