SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 22.01.2013 12:48:58

Nikkore
Участник
Зарегистрирован: 11.12.2012
Сообщений: 10

Регстронезависимая замена (REPLACE)

Здравствуйте!

Существует ли негистронезависимый аналог функции REPLACE(str,from_str,to_str)? Если нет, как решается в MySQL задача негистронезависимой замены подстроки?

Спасибо!

Неактивен

 

#2 22.01.2013 13:09:29

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Регстронезависимая замена (REPLACE)

Встроенной функции нет. Альтернатива в виде хранимой функции предложена здесь:
http://stackoverflow.com/questions/5656 … e-in-mysql

Неактивен

 

#3 22.01.2013 14:10:50

Nikkore
Участник
Зарегистрирован: 11.12.2012
Сообщений: 10

Re: Регстронезависимая замена (REPLACE)

Спасибо!

Неактивен

 

#4 22.01.2013 15:05:47

Nikkore
Участник
Зарегистрирован: 11.12.2012
Сообщений: 10

Re: Регстронезависимая замена (REPLACE)

Обратил внимание, что с русскими символами функция работает некорректно. Например, при попытке замены "ми" на "$$" в строке "ми минор" получается "$$инор". Очевидно, функция LENGTH возвращает не количество символов в строке, а количество байт при кодировке UTF8, а функция INSERT ожидает именно количества символов(( Думаю, LENGTH там надо заменить на CHAR_LENGTH.

Спасибо еще раз! (Приходится изучать MySQL буквально на ходу...)

Отредактированно Nikkore (22.01.2013 15:15:23)

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson