@dieneri

Как удалить определённое словосочетание в значении MYSQL?

Нахожу все строки, содержащие в поле значение, пример -
SELECT * FROM superbase.table1 where theme like '%комплект%';


И далее в этих отобранных строках нужно удалить в поле theme '%комплект%', т.е. заменить на пустоту ''

Не подскажите, каким запросом и можно ли это сделать силами mysql..
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
@alexalexes
1. Нужно знать что такое Update.
2. Уметь работать с Update, не обнулив все подряд (семь раз select-ть с таким же where - один раз update-ть!)
3. Некоторые строковые функции, например, replace.
4. Режим работы транзакций и уровень изоляции таблиц при выполнении транзакций. Чтобы не было сюрпризом, когда работаете с выключенным autocommit-ом (это касается desktop программ - менеджеров СУБД), что данные не сохранились, когда забыли объявить commit после изменения данных, или уметь откатываться rollback-ом, если не объявили commit. Еще доступ к таблице будет заблокирован, пока вы принимаете решение после изменения данных - фиксировать их или нет, если у вас уровень изоляции транзакции на всю таблицу и вы работаете без autocommit.
update superbase.table1
set theme = replace(theme, 'комплект', '')
where theme like '%комплект%'
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы