使用SQL脚本在varchar2数据类型中更改SQL值

时间:2012-10-31 07:29:02

标签: sql oracle

我在这里遇到了问题。 在我的数据库中,我的价值在mobile_phone628932323,但我想更改使用62 to 0

的每一行
old value : 628932323
new value : 08932323

有人可以帮我解决我的问题。感谢

1 个答案:

答案 0 :(得分:1)

如果您使用的是oracle 10g或更高版本,则可以使用regexp_replace函数http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions130.htm

select regexp_replace(your_column, '62([:digit:]*)', '0\2')
from your_table;

或者更老式的方式:

select case
         when your_column like '62%' then '0' || substr(your_column, 3)
       else
         your_column
       end
from your_table;

请注意电话号码字符串中的前导空格或其他字符。