2015-09-04 2 views
-2

У меня есть база данных MySQL, где в моей таблице «posts» есть строка «post-title».Удалить подстроки, соответствующие шаблону в таблице MySQL

Много заголовкам состоят из "фраза пар фраз" (например: "De FRIC и де спели номинальной Alain Стакера").

Я хотел бы удалить все строки из «par ...» вперед, сохраняя только начало текста.

Как это сделать?

+0

скажите нам, что вы испробовали все же ... – Sachin

+0

я не пробовала ничего на данный момент. Поскольку я сделал резервную копию моей базы данных, я не хочу делать плохой запрос. – Guenfood

ответ

1

Вы можете попробовать использовать SUBSTRING_INDEX с ' par ' в качестве разделителя:

SELECT SUBSTRING_INDEX('De fric et de sang par Alain Stucker', ' par ', 1) 

и этот запрос, чтобы обновить таблицу:

UPDATE table_name 
SET title = SUBSTRING_INDEX(title, ' par ', 1) 
+0

Спасибо. Прекрасно работает. Я заработал 500 сообщений в моей базе данных за 2 минуты. – Guenfood

0

Вы можете попробовать это:

select SUBSTRING_INDEX('phrase par phrase',' par ', 1) 

You может проверить SUBSTRING_INDEX для деталей.

FIDDLE DEMO

+0

Вы должны поместить пробелы вокруг 'par'. В противном случае он будет соответствовать ему, когда это часть слова, например 'part'. – Barmar

+0

@Barmar: - Спасибо. Обновлено! –

Смежные вопросы