我正在尝试将 VARCHAR 格式的列 9999999999 显示为 9-999-99999-9。 我知道 TO_CHAR 和 TO_NUMBER 不会起作用,而且我知道我应该使用 SUBSTR 来执行此操作。
如果我能够将多个 SUBSTR 函数作为一列一起使用,我觉得我可以完成这项工作,例如:
SELECT SUBSTR(column, 0, 1) - SUBSTR(column, 1, 3) 等,但这也不起作用。
非常感谢任何指导。
最佳答案
您可以使用正则表达式搜索和替换
select regexp_replace('9999999999','(.)(...)(.....)(.)','\1-\2-\3-\4') from dual;
关于sql - 在 SQL 中将 9999999999 显示为 9-999-99999-9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12029880/