ITPub博客

首页 > Linux操作系统 > Linux操作系统 > number占用的空间

number占用的空间

原创 Linux操作系统 作者:tyoodz 时间:2011-11-16 21:09:40 0 删除 编辑

SQL> create table t (a number, y number);

表已创建。

SQL> insert into t (a) select to_number(rpad('9', rownum*2, '
  2  from all_objects where rownum <= 14;

已创建14行。


SQL> update t set y = a + 1;

已更新14行。

SQL> select a, y ,vsize(a) v1, vsize(y) v2 from t order by a;


                             A                              Y  V1  V2
------------------------------ ------------------------------ --- ---
                            99                            100   2   2
                          9999                          10000   3   2
                        999999                        1000000   4   2
                      99999999                      100000000   5   2
                    9999999999                    10000000000   6   2
                  999999999999                  1000000000000   7   2
                99999999999999                100000000000000   8   2
              9999999999999999              10000000000000000   9   2
            999999999999999999            1000000000000000000  10   2
          99999999999999999999          100000000000000000000  11   2
        9999999999999999999999        10000000000000000000000  12   2

                             A                              Y  V1  V2
------------------------------ ------------------------------ --- ---
      999999999999999999999999      1000000000000000000000000  13   2
    99999999999999999999999999    100000000000000000000000000  14   2
  9999999999999999999999999999  10000000000000000000000000000  15   2
  
可以发现,Y始终占2个字节,A每增加2位有效数字就增加1个字节。number类型存储的是有效数字和小数点的位置,所以有效数字越多占用的空间越大。

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

上一篇: session_cached_cursors
下一篇: 对max和min的实验
请登录后发表评论 登录
全部评论

注册时间:2011-05-16

  • 博文量
    55
  • 访问量
    87644