Удалить из таблицы MySQL строки где есть нижнее подчеркивание

Axel

Client
Регистрация
20.03.2017
Сообщения
123
Благодарностей
6
Баллы
18
Как удалить из таблицы MySQL строки где есть нижнее подчеркивание ___
Кубик с запросом
DELETE FROM `table` WHERE stroka LIKE '%_%'

удаляет вообще все строки
 

THE CaHeK

Client
Регистрация
29.01.2016
Сообщения
296
Благодарностей
116
Баллы
43
Как удалить из таблицы MySQL строки где есть нижнее подчеркивание ___
Кубик с запросом
DELETE FROM `table` WHERE stroka LIKE '%_%'

удаляет вообще все строки
C#:
DELETE FROM `db`.`table ` WHERE stroka REGEXP '_';
Попробуйте так. Только что проверил у себя в бд, сработало.
 
  • Спасибо
Реакции: Axel

Atri

Client
Регистрация
25.05.2019
Сообщения
6
Благодарностей
1
Баллы
3
Паттерн LIKE '%_%' так и будет работать, так как и % и _ это вайлдкарт символы для оператора LIKE. % - заменяет все символы выражения, _ - только один. Поэтому выражение LIKE '%_%' можно прочитать как «любое количество любых символов + любой символ + любое количество любых символов». Очевидно, что под такой запрос подойдут все строки.

чтобы можно было работать с ними не как с вайлдакд символами, а с конкретными, то нужно их экранировать обратным слэшем. Попробуй использовать LIKE '%\_%'.
 
  • Спасибо
Реакции: Axel

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)