Поиск по сайту:
У нас есть мини- и микро-эвм. В какую семантическую нишу попала бы пико-эвм? (Алан.Дж.Перлис)

Как удалить специальные символы с помощью пользовательской функции mysql

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
17.03.2021
Как установить MySQL на Ubuntu 16.04

Пользовательские функции MySQL — очень красивая и интересная концепция. В этjv посте мы хотим создать одну настраиваемую функцию mysql для удаления специальных символов из значения поля таблицы. С помощью этой функции вы также можете удалить специальные символы из строки в mysql. В следующем запросе sql в базе данных mysql или mssql вы увидите, как это работает. Итак, давайте создадим функцию и и используем ее в операторе SELECT в sql-запросе.

Создайте функцию removeSpacialChar:

CREATE FUNCTION `removeSpacialChar`(`in_str` varchar(4096)) RETURNS varchar(4096) CHARSET utf8
BEGIN
DECLARE out_str VARCHAR(4096) DEFAULT '';
DECLARE c VARCHAR(4096) DEFAULT '';
DECLARE pointer INT DEFAULT 1;
IF ISNULL(in_str) THEN
RETURN NULL;
ELSE
WHILE pointer <= LENGTH(in_str) DO
SET c = MID(in_str, pointer, 1);
IF (ASCII(c) >= 48 AND ASCII(c) <= 57) OR (ASCII(c) >= 65 AND ASCII(c) <= 90) OR (ASCII(c) >= 97 AND ASCII(c) <= 122) THEN
SET out_str = CONCAT(out_str, c);
ELSE
SET out_str = CONCAT(out_str, ' ');
END IF;
SET pointer = pointer + 1;
END WHILE;
END IF;
RETURN out_str;
END

 

Использовать с выбранным запросом:

SELECT removeSpacialChar(users.name) FROM `users`

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Если статья понравилась, то поделитесь ей в социальных сетях:

Читайте также

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

1 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Дима

Крутая и понятная статья!!!Такое должно быть объяснение для начинающих разрабов!!
Вопрос: возможно ли добавление зависимости on delete cascade в уже существующую таблицу? Заранее спасибо!!

Рекомендуемое
Эта статья поможет вам найти файлы, созданные или измененные до…

Спасибо!

Теперь редакторы в курсе.