Офис НП AMWAY в Ярославле
Купить продукцию Амвей в Ярославле
На карте Купить AMWAY в ЯрославлеПриобрести высококачественную продукцию Амвей в Ярославле, получить консультации по бизнесу, заказать продукцию или получить заказ:
Адрес: улица Валентины Терешковой, дом 1 (Вход со двора)
Телефон: +7 (920) 112-00-91
Email: matyxho@mail.ru
Сайт: https://www.amway.ru/user/lebedem
Визитка: http://yar.meweb.ru
Иерархия статей
Статьи » Программирование » MySQL: поиск и замена слов во всей таблице одним запросом
Сниппет
Иногда необходимо заменить слово или любую другую информацию например, во всех статьях сразу. Оказывается, в MySQL для этого существует специальный оператор REPLACE
MySQL: поиск и замена слов во всей таблице одним запросом
Опубликовал  Pisatel Добавлено  13-09-2013 11:54 13 Сентябрь 2013 11:54:53 13606  Прочтений 13606 Прочтений  2 Комментариев 2 Комментариев
 printer
Иногда необходимо заменить слово или любую другую информацию например, во всех статьях сразу. Оказывается, в MySQL для этого существует специальный оператор REPLACE

REPLACE — выполняет поиск и замену строки в SQL- запросе.

Оказывается, все весьма просто. Выглядит это следующим образом:

Код: SQL
  mysql_query("UPDATE table_articles SET article = REPLACE(article, 'свадьба', 'похороны')");




Данный SQL- запрос произведет поиск слова свадьба в таблице table_articles в столбце article и заменит его на похороны.

Внимание! Поиск и замена будут осуществлены по всем статьям столбца article таблицы table_articles !

Желательно добавлять условие WHERE: оно необходимо для снижения нагрузки на сервер.

Кстати, данный оператор можно использовать для создания автоматической перелинковки статей...

СЕО- это, блин, не таинство, доступное избранным, мы тоже это могём!

Стоп! Я сказал автоматическую перелинковку? Нет, не так. Правильнее будет- полуавтоматическую перелинковку, то есть слова нужно будет вводить ручками. Но это уже кое-что!

От слов- к делу. Небольшой пример. Допустим, у нашей статьи в базе id 20, и мы хотим, чтобы на нее были ссылки со всех других статей. Реализация- проста до безобразия. Для начала нам нужно определиться с ключевым словом. Например, это слово "функция". Что ж, наш запрос будет выглядеть примерно так:

Код: PHP
  $search = "функция";

$replace = "<a href=\'articles.php?article_id=20\' title=\'функция\'>функция</a>";

mysql_query("UPDATE table_articles SET article = REPLACE(article, '".$search."', '".$replace."') WHERE id != '20'");




Теперь у нас во всех статьях будет ссылка на нужную статью. И наоборот, если нам нужно лишь в одной статье поставить ссылку или ссылки на другие- просто меняем условие, выбирая только одну статью (соответственно, меняем адрес ссылки):

Код: PHP
  $search = "функция";

$replace = "<a href=\'articles.php?article_id=10\' title=\'функция\'>функция</a>";

mysql_query("UPDATE table_articles SET article = REPLACE(article, '".$search."', '".$replace."') WHERE id = '20'");




Это- не руководство к действию. Это идея, информация к размышлению. Работай!
Понравилась статья?
Метки для данной статьи
Похожие статьи
Поделиться:   
Комментарии
#1 | aizek 24 октября 2016 21:43:11
No Avatar
Гость
По замене текста я использовал вот этот вариант может кому пригодится - https://www.youtube.com/watch?v=U3hMBViOnHU
#2 | Pisatel 26 октября 2016 19:59:03
Avatar
Отсутствует
Супер Администратор
Активный
С 03. февраля 2013
aizek, так без проблем)) Пусть каждый делает так, как считает нужным. Но я лично не хочу доверять свои данные сторонним скриптам.
Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
Добавить комментарий
Имя:

Проверочный код:
Последние активные темы форума
  Темы Просмотров Ответов Последние сообщения
folder Плагин Email рассылки Mail To All by Pisatel
CMS PHP Fusion
12589 33 promask
27. апреля 2019
folder Вопрос по переделке bb-кода
PHP, MySQL
3154 5 Pisatel
26. мая 2017
folder Вопросы по Ajax форме обратной связи
CMS PHP Fusion
12848 48 Ditrin
19. февраля 2017
folder BBCode YouTube Video Colorbox mod
CMS PHP Fusion
7530 2 Pisatel
10. декабря 2016
folder Как лучше создать собственную страницу?
CMS PHP Fusion
6703 17 Pisatel
11. мая 2016
folder Небольшие вопросы по скриптам магазина и катало...
PHP, MySQL
51196 80 Pisatel
11. января 2016
folder BBCode Code mod
CMS PHP Fusion
3899 0 Pisatel
31. августа 2015
folder Ajax Like Dislike Article Panel
CMS PHP Fusion
7870 16 Pisatel
07. июля 2015
folder Хлебные крошки / BreadCrumbs SEO Panel
CMS PHP Fusion
8805 17 Pisatel
04. июля 2015
folder Abbr Description BBCode
CMS PHP Fusion
2909 0 Pisatel
15. июня 2015
folder Подозрительный трафик и прочие страшилки
Всякая хрень
5452 2 Ditrin
23. апреля 2015
folder Мод Newsletter - рассылка писем пользователям с...
CMS PHP Fusion
7401 13 Pisatel
10. апреля 2015
folder Мод отправки писем PHPMailer для PHP-Fusion
CMS PHP Fusion
39555 113 Ditrin
06. апреля 2015
folder Появление неизвестного файла subscriptions.php
CMS PHP Fusion
3593 2 Pisatel
06. апреля 2015
folder Autoban on IP
CMS PHP Fusion
13367 13 Pisatel
03. апреля 2015