Короткая версия:
Какой вид escape-последовательности можно использовать для поиска символов Юникода в командной строке mysql?
Длинная версия:
Я ищу способ поиска в столбце записей, содержащих последовательность Unicode, U + 200B, в mysql из командной строки. Я не могу понять, какой вид побега использовать. Я пробовал \ u200B и x200B и даже & # x200B; Наконец-то я нашел один блог, в котором предлагался синтаксис _utf8. Это произведет символ в командной строке:
select _utf8 x'200B';
Теперь я застрял, пытаясь заставить это работать в запросе "LIKE".
Это генерирует символы, но%, кажется, теряет свое особое значение, когда помещается в часть LIKE:
select _utf8 x'0025200B0025';
Я также попробовал concat, но он тоже не работал:
select concat('%', _utf8 x'200B', '%');
Больше фона:
У меня есть данные с пробелами нулевой ширины (zwsp), Unicode Point U + 200B. Обычно это вызвано копированием / вставкой с веб-сайтов, которые используют zwsp в своих выходных данных. С большинством символов Юникода я могу просто вставить символ в терминал (или создать его с помощью кода ключа), но так как этот невидим, это немного сложнее. Я могу создать файл, который генерирует последовательность «%%» и скопировать / вставить его в терминал, и он будет работать, но он оставляет мою историю команд и вывод терминала не по себе. Я бы подумал, что в MySQL есть простой способ сделать это, но до сих пор у меня не получилось.
Заранее спасибо,
- Пол Бурни