oracle tochar fm,oracle的to_char中的fm

SQL> select '|'||to_char(5,'999')||'|' from dual;结果为:|   5|SQL> select '|'||to_c

SQL> select '|'||to_char(5,'999')||'|' from dual;

结果为:|   5|

SQL> select '|'||to_char(5,'000')||'|' from dual;

结果为:| 005|

SQL> select '|'||to_char(-5,'000')||'|' from dual;

结果为:|-005|

可见:前面的空格是为+号留的位置,只是为+号时省略了。

如何去除多余的空格?

SQL> select '|'||to_char(5,'fm000')||'|' from dual;

结果为:|005|

空格没有了,fm主要作用就是去除空格的影响。

10进制转换成16进制:

SQL> select '|'||to_char(32,'fmxxxxxxx')||'|' from dual;

结果为:|20|

16进制转换成10进制:

SQL> select '|'||to_number(20,'xxxxxxxxx')||'|' from dual;

结果为: |32|