永发信息网

oracle 设置number(10,2)为什么存储不是2位小数

答案:4  悬赏:0  手机版
解决时间 2021-11-19 16:39
  • 提问者网友:低吟詩仙的傷
  • 2021-11-18 22:21
oracle 设置number(10,2)为什么存储不是2位小数
最佳答案
  • 五星知识达人网友:旧脸谱
  • 2021-11-18 22:40
number(10,2)只是限定了存储,它存在库中还是以保留2位小数来存的。比如你INSERT 一个10.234它就存的10.23,你可以实验下
至于显示你可以先column money format 999,999.99,再查询。
MY TEST:

SQL> select * from t;

ID
----------
10
10.23

SQL> insert into t values (10.00);

1 row created.

SQL> select * from t;

ID
----------
10
10.23
10

SQL> col id for 999,999.99
SQL> select * from t;

ID
-----------
10.00
10.23
10.00
全部回答
  • 1楼网友:千杯敬自由
  • 2021-11-19 00:18

有 (创建、插入、查询) 的截图吗,我测试是没问题的

  • 2楼网友:渊鱼
  • 2021-11-19 00:03
楼上乱说,他是限制最多存两位小数,你插入时没有小数,他是不存除的。这个太深,你不需要了解,你的问题是显示格式的问题,999.99可以显示2为,999.9999就可以显示4位,跟你的存储没有关系
  • 3楼网友:孤老序
  • 2021-11-18 23:37
number(10,2):10代表浮点数,2代表小数点后位数,所以整数部分长度为8,小数部分长度为2
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯