我在SQL数据库中以(xxx)xxx-xxxx格式存储了电话号码。有什么办法可以将它们转换为xxxxxxxxxx格式吗?
答案 0 :(得分:1)
只需使用REPLACE()
函数:
SELECT REPLACE(REPLACE(REPLACE(REPLACE('(XXX) XXX-XXXX','(',''),')',''),'-',''),' ','')
答案 1 :(得分:0)
假设您使用的是Oracle或MySQL 8+,则可以使用REGEXP_REPLACE
:
SELECT
REGEXP_REPLACE('(914) 591-8563', '\((\d{3})\)\s*(\d{3})-(\d{4})', '\1\2\3')
FROM dual;
9145918563
此解决方案通过捕获10个数字,然后生成仅替换数字的方式,通过正则表达式工作。使用Oracle或MySQL 8+浏览以下演示: