Default Green Orange
Gemini_13's Blog
Блокнот полезных вещей
Home
    • Карта сайта
    • Обо мне
RSS

Поиск и замена слова или части текста в MySQL

MySQL, Скрипты Add comments

Случилось так, что понадобилось мне массово поправить ссылки на картинки во многих сообщениях. Естественно вручную делать не хотелось, да и как-то это старомодно что ли… 🙂
На выручку пришел google со своими умными ссылками. Не будем тянуть кота за хвост, поехали…

Заменить часть текста в строке или целой пачке строк можно всего одним запросом:

UPDATE таблица SET поле = REPLACE(поле, "строка для замены", "чем заменяем");

Вот мой случай:

UPDATE bb_posts_text SET post_text = REPLACE(post_text, "/_imgdata/img/", "/assets/external/illustrations/");

Мне нужно заменить часть ссылки /_imgdata/img/ на /assets/external/illustrations/ в колонке post_text в таблице bb_posts_text.
Как положено UPDATE, можно применять дополнительно условия через WHERE, например:

UPDATE bb_posts_text SET post_text = REPLACE(post_text, "/_imgdata/img/", "/assets/external/illustrations/") WHERE post_text LIKE "%/_imgdata/img/%";

Это просто, быстро и эффективно… но только на небольших объемах БД, вернее небольшом количестве записей, которые будет обрабатывать запрос.
Успехов! 🙂


28 июня, 2013  
Tags: mysql, replace, sql, update, БД, замена слова, замена текста, мускул, найти и заменить

4 комментария to “Поиск и замена слова или части текста в MySQL”

  1. Евгений
    19 мая, 2015 at 9:55 дп

    Спасибоза инструкцию, коротко и понятно. Без нее пришлось бы пол дня менять тексты на сайте. А так все сделал за 2 минуты…


  2. Дмитрий
    28 октября, 2015 at 9:51 пп

    Благодарю за столь ценную инструкцию, на сайте заметил опечатку на огромном количестве страниц, буквально за несколько минут всё поправил, дольше времени ушло на то, чтобы найти в какое поле таблицы вносить изменения.


  3. Владимир
    22 ноября, 2015 at 12:44 пп

    Спасибо за статью. Очень помогла. Просто и быстро.


  4. Nikita
    24 октября, 2016 at 12:31 пп

    Спасибо за маленькую, но всё же крайне полезную штуку. Также на престашопе пришлось менять ссылки.
    Спасибо! Всё-таки надо делиться решениями разных моментов друг с другом.


Leave a Reply

  • Рубрики

    • FreeBSD (20)
    • Linux (46)
    • MySQL (11)
    • Windows (14)
    • Железо (3)
    • Мои моды к TorrentPier II (16)
    • Настройка сервера (49)
    • Разное (33)
    • Скрипты (30)
  • Свежие записи

    • Поля форм на Yii2: textInput(), passwordInput() и hiddenInput()
    • Поля форм на Yii2: CheckboxList()
    • SpeedTest датацентров Digital Ocean
    • Патчим Gearman на Debian
    • nginx + Apache 2.4 и REMOTE_ADDR (решение проблемы)
    • Создание и подключение swap-файла в Debian
    • Запуск PhpStorm 9 x64 на Windows
    • Рекурсивная замена прав доступа для папок и файлов в Linux
    • VirtualBox 5 + phpVirtualBox на Debian 8.2 (jessie)
    • Обработка сессий PHP с помощью Redis + phpredis на Debian 7.8
  • Ссылки

    • My GitHub
  • Архивы

    • Июнь 2016 (2)
    • Март 2016 (2)
    • Январь 2016 (3)
    • Ноябрь 2015 (2)
    • Август 2015 (1)
    • Февраль 2015 (1)
    • Январь 2015 (7)
    • Октябрь 2014 (1)
    • Июнь 2014 (1)
    • Май 2014 (1)
    • Апрель 2014 (7)
    • Февраль 2014 (9)
    • Январь 2014 (5)
    • Декабрь 2013 (7)
    • Ноябрь 2013 (1)
    • Октябрь 2013 (3)
    • Август 2013 (4)
    • Июль 2013 (4)
    • Июнь 2013 (3)
    • Апрель 2013 (2)
    • Март 2013 (2)
    • Февраль 2013 (6)
    • Январь 2013 (2)
    • Декабрь 2012 (1)
    • Ноябрь 2012 (2)
    • Октябрь 2012 (7)
    • Сентябрь 2012 (22)
Все права защищены © 2013 Gemini_13's Blog
G13.org.ua