Вот шаг за шагом.Следуйте этому процессу, чтобы не вставлять загрузку неверных данных.
1) Выберите нужные вам строки, кроме идентификатора первичного ключа автоинкремента - mysql сам справится с этим:
SELECT SEARCH_URL, SEARCHABLE_ID, SEARCHABLE_TYPE FROM TABLE --where .. ?
Используйте предложение where, если вы не хотите, чтобы все строки
2) Вы изменяете данные в соответствии с вашими желаниями.Здесь мы используем функцию замены строки, чтобы изменить google на yahoo:
SELECT REPLACE(SEARCH_URL, 'google', 'search.yahoo'), SEARCHABLE_ID, SEARCHABLE_TYPE FROM TABLE
Проверьте, хорошо ли это выглядит .. (Вы сказали, что хотите изменить google -> search.yahoo но, строго говоря, данные вашего примера требуют www.google -> search.yahoo ) - ПРОВЕРЬТЕ СВОИ ДАННЫЕ ПЕРЕД НАЧАЛОМ ЭТОГО
3) Затем добавьте вставку над ней, чтобывставка в таблицу
INSERT INTO TABLE(SEARCH_URL, SEARCHABLE_ID, SEARCHABLE_TYPE)
SELECT REPLACE(SEARCH_URL, 'google', 'search.yahoo'), SEARCHABLE_ID, SEARCHABLE_TYPE FROM TABLE
Вам необходимо указать полный набор вставляемых столбцов, а также указать столько же столбцов для вставки, сколько вы выбрали.
Если у вас есть автоинкрементный первичный ключ, вы не можете сделать insert into table select * from table
, потому что он выберет столбец ID, а затем попытается вставить то, что технически будет набором уже существующих значений