2008-07-17
Oracle和java对数据的处理一部分
好久没写了,荒废了,今天使用数据处理,顺便做个记载:
一.对于double型数据的位数处理,在Oracle中有一下一些对数据位数的近似处理:
(1) SELECT CEIL(16.886) "Ceiling" FROM DUAL;
Ceiling 返回:17
(2)SELECT FLOOR(16.886) "Floor" FROM DUAL;
Floor 返回:16
(3)SELECT ROUND(16.886,1) "Round" FROM DUAL;
Round 返回:16.9
(4)SELECT TRUNC(16.886,1) "Truncate" FROM DUAL;
Truncate 返回:16.8
(5)SELECT TRUNC(16.886,-1) "Truncate" FROM DUAL;
Truncate 返回:10
说明:
(1)CEIL(16.886)只能取最接近但大于16.886的整数 17
(2)FLOOR(16.886)只能取最接近但小于16.886的整数 16
(3)ROUND(16.886,1)能依据精确位来四舍五入,16.9
(4)TRUNC(16.886,1)只能依据精确位来取,不会四舍五入,16.8
(5)trunc 和 round 中的 "1" 表示小数点后1位,0表示个位,-1表示十位
二.java中对数据的格式化:
类:java.text.DecimalFormat
一.对于double型数据的位数处理,在Oracle中有一下一些对数据位数的近似处理:
(1) SELECT CEIL(16.886) "Ceiling" FROM DUAL;
Ceiling 返回:17
(2)SELECT FLOOR(16.886) "Floor" FROM DUAL;
Floor 返回:16
(3)SELECT ROUND(16.886,1) "Round" FROM DUAL;
Round 返回:16.9
(4)SELECT TRUNC(16.886,1) "Truncate" FROM DUAL;
Truncate 返回:16.8
(5)SELECT TRUNC(16.886,-1) "Truncate" FROM DUAL;
Truncate 返回:10
说明:
(1)CEIL(16.886)只能取最接近但大于16.886的整数 17
(2)FLOOR(16.886)只能取最接近但小于16.886的整数 16
(3)ROUND(16.886,1)能依据精确位来四舍五入,16.9
(4)TRUNC(16.886,1)只能依据精确位来取,不会四舍五入,16.8
(5)trunc 和 round 中的 "1" 表示小数点后1位,0表示个位,-1表示十位
二.java中对数据的格式化:
类:java.text.DecimalFormat
//详细的部分需要查JDK,一下是eg
java.text.DecimalFormat df = new java.text.DecimalFormat(
"################0.##");
String ms = df.format(XXX);//XXX是需要处理的数据
- 11:13
- 浏览 (17)
- 评论 (0)
- 分类: Oracle SQL
- 相关推荐
发表评论
- 浏览: 10665 次
- 性别:

- 来自: 北京

- 详细资料
搜索本博客
我的相册
自行车
共 1 张
共 1 张
最近加入圈子
最新评论
-
HashMap使用
你就是在thinking in java 上下载的吧,不过总结的不错
-- by lysmart_8 -
过去有一位年轻和尚,一心 ...
哈哈哈,这个老和尚估计是个高级“和尚”
-- by hydex -
不规范的树结构表查询
一个值得读一下的文章:http://www.itpub.net/redirect ...
-- by hydex






评论排行榜