oracle中不管什么数字(正常数字,不包括0000001这样的),都可以用number来存,只是后面的参数略有不同,你说的小数,可以用number(n,2)来保存就可以了。
站在用户的角度思考问题,与客户深入沟通,找到米林网站设计与米林网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广、空间域名、网页空间、企业邮箱。业务覆盖米林地区。
oracle 关于数字存储的主要有下面几个:
NUMBER(P,S) 数字类型 P为整数位,S为小数位
DECIMAL(P,S) 数字类型 P为整数位,S为小数位
INTEGER 整数类型 小的整数
FLOAT 浮点数类型 NUMBER(38),双精度
REAL 实数类型 NUMBER(63),精度更高
你这个问题很好解决,你这个就是因为数值太大了,数据库就采用科学计数法了。
比如你查询上图结果的Select语句是:
SELECT * FROM table;只要在查询前执行:
col item format 999999999999999999999999999;之后再执行查询语句,应该数值就是你想要的数值了。(PS:999999999999999999999999999这个数值可以根据你列的长度来设置)
希望可以帮助你,望采纳!!
还是number型。
参考以下定义:
NUMBER ( precision, scale)
precision表示数字中的有效位。如果没有指定precision的话,Oracle将使用38作为精度。
scale表示数字小数点右边的位数,scale默认设置为0. 如果把scale设成负数,Oracle将把该数字取舍到小数点左边的指定位数。