Офис НП AMWAY в Ярославле
Офис Амвей в Ярославле
На карте Офис 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 11392  Прочтений 11392 Прочтений  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 Вопрос по переделке bb-кода
PHP, MySQL
2136 5 Pisatel
26. мая 2017
folder Вопросы по Ajax форме обратной связи
CMS PHP Fusion
9506 48 Ditrin
19. февраля 2017
folder BBCode YouTube Video Colorbox mod
CMS PHP Fusion
6821 2 Pisatel
10. декабря 2016
folder Как лучше создать собственную страницу?
CMS PHP Fusion
5436 17 Pisatel
11. мая 2016
folder Небольшие вопросы по скриптам магазина и катало...
PHP, MySQL
45409 80 Pisatel
11. января 2016
folder BBCode Code mod
CMS PHP Fusion
3319 0 Pisatel
31. августа 2015
folder Ajax Like Dislike Article Panel
CMS PHP Fusion
6673 16 Pisatel
07. июля 2015
folder Хлебные крошки / BreadCrumbs SEO Panel
CMS PHP Fusion
7323 17 Pisatel
04. июля 2015
folder Abbr Description BBCode
CMS PHP Fusion
2469 0 Pisatel
15. июня 2015
folder Плагин Email рассылки Mail To All by Pisatel
CMS PHP Fusion
10320 32 Pisatel
26. апреля 2015
folder Подозрительный трафик и прочие страшилки
Всякая хрень
4513 2 Ditrin
23. апреля 2015
folder Мод Newsletter - рассылка писем пользователям с...
CMS PHP Fusion
6276 13 Pisatel
10. апреля 2015
folder Мод отправки писем PHPMailer для PHP-Fusion
CMS PHP Fusion
32945 113 Ditrin
06. апреля 2015
folder Появление неизвестного файла subscriptions.php
CMS PHP Fusion
3135 2 Pisatel
06. апреля 2015
folder Autoban on IP
CMS PHP Fusion
12170 13 Pisatel
03. апреля 2015