удалить все числовые символы из столбца mysql

Я хочу разработать одну функцию mysql, которая может удалить только числовые символы из строки.

Вы можете написать определенную пользователем функцию, в которой вы можете написать логику замены или попробовать:

Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(column,'9',''),'8',''),'7',''),'6',''),'5',''),'4',''),'3',''),'2',''),'1',''),'0','') 

Создайте функцию для выполнения этой задачи.

 DROP FUNCTION IF EXISTS alphas; DELIMITER | CREATE FUNCTION alphas( str CHAR(32) ) RETURNS CHAR(16) BEGIN DECLARE i, len SMALLINT DEFAULT 1; DECLARE ret CHAR(32) DEFAULT ''; DECLARE c CHAR(1); SET len = CHAR_LENGTH( str ); REPEAT BEGIN SET c = MID( str, i, 1 ); IF c REGEXP '[[:alpha:]]' THEN SET ret=CONCAT(ret,c); END IF; SET i = i + 1; END; UNTIL i > len END REPEAT; RETURN ret; END | DELIMITER ; SELECT alphas('123ab45cde6789fg'); +----------------------------+ | alphas('123ab45cde6789fg') | +----------------------------+ | abcdefg | +----------------------------+ 

Если вы хотите только цифры, используйте это

 SET GLOBAL log_bin_trust_function_creators=1; DROP FUNCTION IF EXISTS digits; DELIMITER | CREATE FUNCTION digits( str CHAR(32) ) RETURNS CHAR(32) BEGIN DECLARE i, len SMALLINT DEFAULT 1; DECLARE ret CHAR(32) DEFAULT ''; DECLARE c CHAR(1); SET len = CHAR_LENGTH( str ); REPEAT BEGIN SET c = MID( str, i, 1 ); IF c BETWEEN '0' AND '9' THEN SET ret=CONCAT(ret,c); END IF; SET i = i + 1; END; UNTIL i > len END REPEAT; RETURN ret; END | DELIMITER ; SELECT digits('123ab45cde6789fg'); +----------------------------+ | digits('123ab45cde6789fg') | +----------------------------+ | 123456789 | +----------------------------+ 

Справка

  • Найти CRLF в Notepad ++
  • Регулярное выражение для пароля должно содержать не менее восьми символов, как минимум одно число и буквы нижнего и верхнего регистра и специальные символы
  • Как «обратный матч» с регулярным выражением?
  • Регулярное выражение для поиска и замены в Microsoft Word
  • java регулярное выражение для извлечения содержимого в квадратных скобках
  • Какова техническая причина, по которой «lookbehind assertion ДОЛЖЕН быть фиксированной длиной» в регулярном выражении?
  • Notepad ++ и регулярное выражение: извлечь строку и два числа из списка строк
  • R grep: есть ли оператор AND?
  • В чем сложность регулярного выражения?
  • Удалить часть строки
  • Получить строку между двумя строками в строке
  • Interesting Posts

    Как я могу определить, какая оперативная память будет соответствовать моему компьютеру?

    Как получить ссылку на компонент, связанный с ElementRef в Angular 2

    Как я могу использовать mySQL replace () для замены строк в нескольких записях?

    Как заставить Excel открывать второе пустое окно при открытии файла из проводника?

    IE предлагает открыть или сохранить результат json с сервера

    Удалить обратную косую черту с символьной строки

    Невозможно установить numpy из формата колеса

    BASH: повторение последнего запуска команды

    Regex, который будет соответствовать декларации Java-метода

    Как исправить неинициализированную постоянную проблему Rake :: DSL на Heroku?

    Список пользовательских значков на экране входа исчезла

    В чем разница между «$ (this)» и «this»?

    Как я могу удалить один сайт из кеша в Firefox?

    Как удалить несколько сегментов из видео с помощью FFmpeg?

    Android Studio: плагин с id ‘android-library’ не найден

    Давайте будем гением компьютера.