首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | 镜像站
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
Linux资讯 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>linux数据库>oracle>正文

Oracle数据库百分比格式化的解决方案

http://www.oklinux.cn  2008-03-20  来源: 赛迪网 Alice  会员收藏  游客收藏  【 】 

【赛迪网-IT技术报道】问题:需要对在Oracle数据库中查询出来的数值进行比率的计算。类似于如下的SQL:

Select Round((discount/Amount),2) from dual;

这样算出来的数字可以满足绝大部分的需求。但是对于不到1的数字,问题出来了......显示的类似于 .45样子的数据。0.45前面的0不见了。

以下总结了两种方法来解决缺0的问题。

第一种解决方法:

SELECT DECODE (TRUNC (1/100),0, REPLACE (1/100, '.', '0.'),TO_CHAR (1/100))
FROM DUAL;

大家只要在1/100的地方替换成自己需要的百分数就可以了。

第二种解决方法:

SELECT RTrim(To_Char(1/100,'FM99999999990.9999'),'.') FROM dual;

替换方式和上面相同。

两种方式的详细比较:

第一种公式比较复杂,但可以处理通用的数值。

第二种看起来简单,不过格式化的值的位数一定要大于计算的位数才行。比如 SELECT RTrim(To_Char(200,'FM90.9999') ,'.') FROM dual; 显示的就是########,因为已经超过了格式化的范围。


上一篇:系统管理:Linux系统下临时文件TMP清理   下一篇:深入讲解阻塞现象的产生原因及处理方法


收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·深入讲解阻塞现象的产生原因及处理方法
·Oracle 9.2.0.1版本函数编译的一个BUG
·讲解jython访问Oracle数据库的具体步骤
·Oracle利用传输表空间导出导入数据的步骤
·Oracle数据库中如何对时间格式进行处理
·如何使用pipeline function获得实时输出
·深入讲解Oracle数据库的多栏输出语句
·教你快速掌握Oracle数据库的周数计算
·带你轻松接触Oracle DBLink的简单运用
·实例讲解"Oracle"数据库的分页显示
·通过幸存的Oracle文件修复Oracle9i数据
·详细讲解获得当前"SCN"的几种有效方式
·快速解决"Oracle"数据库中的常见问题
·用SYS执行全文索引的建立时出现权限不足
·实例讲解Oracle中一些关于权限的数据字典
·详细讲解Oracle表分区的相关概念及其优点
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·Oracle 9.2.0.1版本函数编译的一个BUG
·深入讲解阻塞现象的产生原因及处理方法
·讲解jython访问Oracle数据库的具体步骤
·Oracle利用传输表空间导出导入数据的步
·Oracle数据库中如何对时间格式进行处理
·如何使用pipeline function获得实时输
·深入讲解Oracle数据库的多栏输出语句
·教你快速掌握Oracle数据库的周数计算
·带你轻松接触Oracle DBLink的简单运用
·实例讲解"Oracle"数据库的分页显示
·通过幸存的Oracle文件修复Oracle9i数据
·详细讲解获得当前"SCN"的几种有效方式
  阅读排行
·如何修改遗失的MySQL的ROOT用户密码
·详解远程SHELL下安装配置RedHat ES 5的
·教你如何将MySQL数据库的密码恢复
·教你在MySQL从口令恢复设置的密码
·在 Oracle Enterprise Linux 上升级到
·oracle9i installation on fedora core
·Oracle Instant client介绍
·Oracle高级复制(同步复制)配置步骤详细
·用Oracle归档日志进行恢复的方法
·Oracle 数据库存储结构简介
·Linux下的Oracle数据库编程详解
·Linux下Oracle9i RMAN备份及恢复步骤介
·带你轻松接触一些比较常用的sql*plus命
·Oracle的快照复制
·Oracle HA 在Unix上双机环境的安装指南
网摘收藏: