原始格式:
123-456-7890
我的目标格式:
(123)456-7890
我想走在子字符串之间串联的路线,但是我不断地被标记为错误。我不确定要实现格式化的更好方法。
我的查询:
select || '(' || substr(telephone,0, 3)|| ')' ||
substr(telephone,4, 3)|| ' '||
substr(telephone,7, 4)) as telephone,
from book;
我目前的错误:
"missing expression"
最佳答案
SELECT
的末尾有一个额外的悬挂圆括号,并且前面还有一个悬挂的串联运算符||
。试试这个:
SELECT '(' || SUBSTR(telephone, 0, 3) || ')' ||
SUBSTR(telephone, 4, 3) || ' ' || SUBSTR(telephone, 7, 4) AS telephone
FROM book
更新:
您应该真正使用此查询,因为事实证明您在形成所需的输出时也遇到了问题:
SELECT '(' || SUBSTR(telephone, 1, 3) || ')' || SUBSTR(telephone, 5, 8) AS telephone
FROM book
关于sql - Oracle SQL在电话号码中插入括号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35193454/