如何在Oracle数据库中保留小数点后两位 而且在java中保留两位插入到数据表中

如何在Oracle数据库中保留小数点后两位 而且在java中保留两位插入到数据表中,第1张

使用number

NUMBER

用于存储零、正数、定长负数以及浮点数。NUMBER 数据类型可以以 NUMBER(P,S)的

形式来定义数字的精度和范围。 这里:p 表示精度 (1-38),它表示存储在列中数

字的总长度是 p 位: s 表示范围,它表示小数后的位数。该取值范围可以从-84 到 127 。例如:

CREATE TABLE test

(name number(5))

使用精度 5 来定义一个正数(如 12345)。

CREATE TABLE test

(name number(5,2))

使用精度 5 和范围 2 来定义一个数字。符合这种数据类型的数字值如 12345 和 1234

select title , ROUND(click/charge,4)

from table

where date< '2007-7-7 00:00:00'

ROUND()是四舍五入

用 SELECT ROUND来处理不同长度位的数据,进行处理成你要的四舍五入位精度数据。

再用insert into生成一个临时表,最后update到当前表中。这些转换处理掉它们。

xls中的数字会默认为"数字"型,换到sql里就类似于numeric或者decimal这样的,而不是int的整型

有两种方法,一是先在sql中建表,把ID列类型明确定义为int型,再导入数据

二是在xls中把ID列设为文本型,再导入sql

解答:

方案一:修改数据库字段数据类型如果数据库中的字段可以不是money类型的话,那你可以把数据库字段的类型可以改成 numeric(18,2)这样数据库中保存的值就是2位小数

方案二:如果你不想动数据库,可以在显示数据的时候进行控制用ConvertToXXX(格式字符串)或者用mathround或者tostring

另外注:如果这个数据是金额的话,那么在显示数据时,就算是2 也应该显示200

 1 你看 number(4,3)是表示 这个数 一共有4位是有效位,后面的3 表示有3个是小数

也就是这个数 只能是1234,这样格式的 最大只能是9999,

2 number(3,4) 表示这个数 有效位数是3位 但是有四位小数 也就是只能是这个格式00123

最大只能是00999;

3  number(3,-3) 就是这个数有效位数一共3位,如果是正3 则是3位小数 如果是负数的话就是3 位整数 也就是123这个格式 最大只能是999

4 还有这样的 number(2,-3) 就是这个数的有效位数是2位 但是有三位整数 所以只能是230 这样的 最大是990;

希望能帮到你 望采纳,谢谢,有不明白的再问!

以上就是关于如何在Oracle数据库中保留小数点后两位 而且在java中保留两位插入到数据表中全部的内容,包括:如何在Oracle数据库中保留小数点后两位 而且在java中保留两位插入到数据表中、mysql数据库,结果保留4位小数,小数点后四位、关于excel向SQL Server数据库导入double类型的数据,小数点后最后一位不精确怎么办等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10064147.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存