oraclesql中的数字格式

oraclesql中的数字格式,sql,oracle,number-formatting,Sql,Oracle,Number Formatting,我这里有些问题。我选择了一列,结果是“01201698765”。如何将此数字拆分为以下形式:“01.2016.98765” 我习惯于使用字符,但是前面的“0”(零)数字不见了。假设列是字符串,只需使用字符串操作: select substr(col, 1, 2) || '.' + substr(col, 3, 4) + '.' + substr(col, 5, 5) 您可以使用: SUBSTR 串联运算符| 比如说, SQL> WITH sample_data AS( 2 SE

我这里有些问题。我选择了一列,结果是“01201698765”。如何将此数字拆分为以下形式:“01.2016.98765”


我习惯于使用字符,但是前面的“0”(零)数字不见了。

假设列是字符串,只需使用字符串操作:

select substr(col, 1, 2) || '.' + substr(col, 3, 4) + '.' + substr(col, 5, 5)
您可以使用:

  • SUBSTR
  • 串联运算符
    |
比如说,

SQL> WITH sample_data AS(
  2  SELECT '01201698765' num FROM dual
  3  )
  4  --end of sample_data mimicking real table
  5  SELECT num,
  6         substr(num, 1, 2)||'.'||substr(num, 3, 4)||'.'||substr(num, 7) num_formatted
  7  FROM sample_data;

NUM         NUM_FORMATTED
----------- -------------
01201698765 01.2016.98765

SQL>

专栏的类型是什么?对不起,忘了提一下。类型为CHAR@戈登林诺夫