обновить записи в базе данных oracle8i, где мы не можем использовать регулярные выражения - PullRequest
0 голосов
/ 27 августа 2018

У меня есть задача, где мне нужно обновить формат телефонного номера примерно на 200 записей.Текущий формат данных в столбце:

xwz@gmail.com,04163304166@redcoal.com

Новый формат должен быть

xwz@gmail.com,+614163304166@redcoal.com

В Oracle 8i мы не можем использовать regex так, какие еще способы мы можем использовать, чтобы достигнуть этого.

1 Ответ

0 голосов
/ 27 августа 2018

Это похоже на очень плохой формат данных - хранение нескольких значений в строке.Но вы можете использовать replace(), по крайней мере, для приведенного вами примера:

select replace(col, ',0', ',+61')
from t;

Я бы проверил, что это делает то, что вы хотите.В конце запрос может выглядеть так:

update t
    set col = replace(col, ',0', ',+61')
    where col like '%,0';
...