поиск специального символа в строковых функциях mysql - PullRequest
0 голосов
/ 12 мая 2018

Мне нужно использовать специальный символ, например (\), в строковой функции mysql, и, к сожалению, он не работает должным образом! это функция, которая мне нужна и протестировать)

как эти

SELECT LOCATE("\", "Schools.co\m", 1) AS MatchPosition;
select SUBSTRING_INDEX("footba\l","\",1)

Буду признателен, если кто-нибудь сможет мне помочь

1 Ответ

0 голосов
/ 12 мая 2018

Обратная косая черта должна быть экранирована. Чтобы исправить ваш SUBSTRING_INDEX пример, рассмотрите следующее:

SELECT SUBSTRING_INDEX("footba\\l","\\",1) FROM dual

Здесь необходимо экранировать обратную косую черту и в строковом литерале и в тексте, чтобы соответствовать.

Чтобы избежать буквального обратного слеша внутри выражения LIKE, используйте четыре обратных слэша, например,

SELECT 'match' FROM dual WHERE "footba\\l" LIKE '%\\\\%';

Демо

...