вопрос
Добрый вечер! Подскажите, как при помощи mysql запроса вставить значение из доп. поля в title, например, после определенного слова в title?
В общем-то запрос есть, которым можно массово редактировать title, но вот как прописать в него доп. поле и чтобы значение для каждой новости было взято из соответствующего поля?
В общем-то запрос есть, которым можно массово редактировать title, но вот как прописать в него доп. поле и чтобы значение для каждой новости было взято из соответствующего поля?
UPDATE `dle_post` SET `metatitle` = REPLACE(`metatitle`, 'купить', 'купить в Ростове')
Для того, чтобы вставить значение из дополнительного поля в title можно использовать конкатенацию строк внутри запроса. Например, для вставки значения из дополнительного поля "my_custom_field" после слова "купить" в метатег title, можно использовать следующий запрос:
В этом запросе мы используем функцию CONCAT(), чтобы объединить несколько строк. Функция SUBSTRING_INDEX() используется для разделения строки на две части: до и после слова "купить". Затем мы вставляем значение из дополнительного поля "my_custom_field" между этими двумя частями с помощью конкатенации строк.
Важно добавить условие WHERE, чтобы запрос обрабатывал только записи, у которых значение в дополнительном поле не является пустым (NULL). Таким образом, вы можете быть уверены, что вставка будет выполнена только для записей, у которых есть соответствующее значение в дополнительном поле.
Надеюсь, это поможет вам решить вашу задачу!
UPDATE `dle_post` SET `metatitle` = CONCAT(SUBSTRING_INDEX(`metatitle`, 'купить', 1), 'купить в Ростове', SUBSTRING_INDEX(`metatitle`, 'купить', -1))
WHERE `my_custom_field` IS NOT NULL;
В этом запросе мы используем функцию CONCAT(), чтобы объединить несколько строк. Функция SUBSTRING_INDEX() используется для разделения строки на две части: до и после слова "купить". Затем мы вставляем значение из дополнительного поля "my_custom_field" между этими двумя частями с помощью конкатенации строк.
Важно добавить условие WHERE, чтобы запрос обрабатывал только записи, у которых значение в дополнительном поле не является пустым (NULL). Таким образом, вы можете быть уверены, что вставка будет выполнена только для записей, у которых есть соответствующее значение в дополнительном поле.
Надеюсь, это поможет вам решить вашу задачу!