ITPub博客

首页 > 数据库 > Oracle > number----char(to_char)

number----char(to_char)

原创 Oracle 作者:寒枫1225 时间:2020-02-20 13:46:14 0 删除 编辑

1,number----char(to_char)

一个数字在转成字符类型,在指定了格式时正数会多一个字节用来存储前面的‘+’
SQL> select length(23),length(-23) from dual;

LENGTH(23) LENGTH(-23)
---------- -----------
         2           3

SQL> select length(to_char(23)),length(to_char(-23)) from dual;

LENGTH(TO_CHAR(23)) LENGTH(TO_CHAR(-23))
------------------- --------------------
                  2                    3

SQL> select length(to_char(23,'99')),length(to_char(-23,'99')) from dual;

LENGTH(TO_CHAR(23,'99')) LENGTH(TO_CHAR(-23,'99'))
------------------------ -------------------------
                       3                         3

多出的占位符用空格补充
SQL> select length(to_char(23,'S99')),length(to_char(0,'S99')) from dual;

LENGTH(TO_CHAR(23,'STM9')) LENGTH(TO_CHAR(0,'S99'))
-------------------------- ------------------------
                         3                        3

                        
可以通过使用‘S’来显示‘+’
SQL> select to_char(23,'S99'),to_char(-23,'S99') from dual;

TO_CHAR(23,'S99') TO_CHAR(-23,'S99')
----------------- ------------------

SQL> select length(to_char(23,'TM9')),length(to_char(-23,'TM9')) from dual;

LENGTH(TO_CHAR(23,'TM9')) LENGTH(TO_CHAR(-23,'TM9'))
------------------------- --------------------------
                        2                          3
                        
TM最小格式输出,会去掉空格以及前面的‘+’,同不带格式参数一样
SQL> select length(to_char(23,'TM9')),length(to_char(-23,'TM9')) from dual;

LENGTH(TO_CHAR(23,'TM9')) LENGTH(TO_CHAR(-23,'TM9'))
------------------------- --------------------------
                        2                          3

                        
                       

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29609161/viewspace-2676371/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2014-04-15

  • 博文量
    5
  • 访问量
    6189