#mariadb #mariadb-10.1
#mariadb #mariadb-10.1
Вопрос:
У меня есть строка, и мне нужно вставить пробел после каждого числа.
например Ctn/10Btl/100ml
, для его преобразования Ctn/10 Btl/100 ml
.
Можете ли вы помочь мне, как выполнить запрос, чтобы вставить пробел после числа?
Любая помощь приветствуется.
Спасибо
Комментарии:
1. Это не пробел после каждого символа. Это сразу после каждого числа.
2. Какая версия MySQL? С 8.x вы можете использовать
REGEXP_REPLACE()
3. @Barmar, спасибо, моя версия MySQL 10.x.
4. Это версия MariaDB.
5. Пожалуйста, укажите конкретную версию MariaDB. Некоторые функции версии 10.2 и выше недоступны в версии 10.1 или ниже.
Ответ №1:
Вы могли бы использовать REGEXP_REPLACE
с группой захвата:
SELECT REGEXP_REPLACE('Ctn/10Btl/100ml', '(\d )(\D)', '\1 \2')
FROM yourTable;
Вывод: Ctn/10 Btl/100 ml
ДЕМОНСТРАЦИЯ
Комментарии:
1. @Zaw Я полагаю, что ваш первоначальный вопрос был помечен MySQL. MariaDB — это не то же самое, что MySQL. Проверьте мой слегка обновленный ответ выше.
2. Да, я понимаю. Спасибо.