За последние 24 часа нас посетили 21647 программистов и 1034 робота. Сейчас ищут 700 программистов ...

Как вырезать все, кроме цифр

Тема в разделе "MySQL", создана пользователем marlin, 30 июн 2021.

  1. marlin

    marlin Новичок

    С нами с:
    19 июн 2019
    Сообщения:
    61
    Симпатии:
    3
    Приветствую.
    В поле есть цифры и кое какие еще значки, ну как в номере телефона. И пробел.
    Думаю как попроще чисто на sql в запросе из поля оставить только цифры.

    Видел примеры с replace(replace(REPLACE, но сильно многословно получается.

    Насчет REGEXP_REPLACE - сильно сомневаюсь, у нас mysql5.7 и mariadb (не помню какая версия), надо чтобы на обоих работало.

    Есть совет как это сделать?

    p.s. Это должно делаться чисто в БД, на php обработать при выводе нет возможности, этот результат не в php идет.
    Можно, правда, при вводе, дублировать в "чистую" строку в отдельной колонке, но тоже не оверхед?
     
  2. Drunkenmunky

    Drunkenmunky Активный пользователь

    С нами с:
    12 авг 2020
    Сообщения:
    1.476
    Симпатии:
    281
    Ну, так, а зачем вы необработанные данные в базу записываете?
    Весь смысл теряется.
    Всё по полочкам должно быть.
     
  3. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    863
    Симпатии:
    132
    Код (Text):
    1. SELECT REGEXP_REPLACE('asdasdas 12121 dasfsdf', '[^0-9]', '');
    Проверить не можете что ли не версиях своих серверов БД?
     
  4. marlin

    marlin Новичок

    С нами с:
    19 июн 2019
    Сообщения:
    61
    Симпатии:
    3
    Это они в формате, который пользователям удобен, который они вводят, потом редактируют.
    --- Добавлено ---
    да че там проверять, если гугл говорит что в mysql только c 8-й версии появилось. Но проверил, все равно, на той, что выше указал, чуда не случилось.
     
  5. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    863
    Симпатии:
    132
    Настойте на апе серверов БД ))
    Или там световые года баз крутятся?