REPLACE — различия между версиями

Материал из Мегапедии
Перейти к: навигация, поиск
(начало)
 
Строка 1: Строка 1:
'''REPLACE''' — функция в [[SQL]]. Позволяет заменить все вхождения Search в строке String на Replace:
+
'''REPLACE''' — функция в [[SQL]]. Позволяет заменить все вхождения SearchCond в строке String на ReplaceCond:
  
<source lang=sql>  REPLACE(String, Search, Replace)</source>
+
<source lang=sql>  REPLACE(String, SearchCond, ReplaceCond)</source>
  
 
== Применение ==
 
== Применение ==

Версия 00:38, 3 мая 2013

REPLACE — функция в SQL. Позволяет заменить все вхождения SearchCond в строке String на ReplaceCond:

<source lang=sql> REPLACE(String, SearchCond, ReplaceCond)</source>

Применение

Применяется в инструкциях UPDATE, для массовой замены содержимого базы данных, например замена всех пробелов в столбце column1 на подчёркивания:

<source lang=sql> UPDATE table1 SET column1 = REPLACE(column1, ' ', '_');</source>

Может применяться в условиях поиска и выборки из нескольких таблиц. Например, эта инструкция возвращает записи журнала блокировок для пользователе, удалённых из базы данных. Оператор REPLACE здесь необходим, так как в log_title имя пользователя хранится с использованием подчёркиваний вместо пробелов.

<source lang=sql>

 SELECT log_title FROM logging
 LEFT JOIN user ON REPLACE(log_title,'_',' ')=user_name
 WHERE log_type = 'block' AND log_user <> 0 AND user_name is NULL
 GROUP BY log_title;

</source>