Обновите номер телефона после добавления форматирования в базе данных Oracle - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть таблица «Сотрудник» со столбцом «phone_number».В настоящее время номер телефона добавляется в виде текста, скажем, 123456789. Я хочу обновить данные в формате: 123 456 789. т.е. с 9-значного номера телефона до строки 3digits1space3digits1space3digits.

Я использую REGEXP_REPLACE(phone_number, '\d{3}\s{1}\d{3}\s{1}\d{3}'), чтоне работает.

Пожалуйста, помогите.

1 Ответ

0 голосов
/ 26 февраля 2019

Я предлагаю сделать это простым способом:

UPDATE EMPLOYEES
  SET PHONE_NUMBER = SUBSTR(PHONE_NUMBER, 1, 3) || ' ' ||
                     SUBSTR(PHONE_NUMBER, 4, 3) || ' ' ||
                     SUBSTR(PHONE_NUMBER, 7, 3)
  WHERE REGEXP_LIKE(PHONE_NUMBER, '\d{9}')

Регулярные выражения имеют свое место - но их место не везде.: -)

Удачи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...