网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>数据库技术>>Oracle技术>>Oracle开发>查看文档  
  用一条SQL 实现其它进制到十进制的转换     
  文章作者:未知  文章来源:未知  
  查看:170次  录入:管理员--2007-08-05  
 

问:怎样实现ORACLE中用一条SQL实现其它进制到十进制的转换?

答:具体示例如下:

-----二进制转换十进制-----------------
select sum(data1)
  from (select substr('1101', rownum, 1) * power
(2, length('1101') - rownum) data1
          from dual
        connect by rownum <= length('1101'))

-----八进制转换十进制-----------------
select sum(data1)
  from (select substr('1101', rownum, 1) * power
(8, length('1101') - rownum) data1
          from dual
        connect by rownum <= length('1101'))

-----十六进制转换十进制-----------------
select sum(data1)
  from (select (CASE upper(substr('2D', rownum, 1))
                 WHEN 'A' THEN '10'
                 WHEN 'B' THEN '11'
                 WHEN 'C' THEN '12'
                 WHEN 'D' THEN '13'
                 WHEN 'E' THEN '14'
                 WHEN 'F' THEN '15'
                 ELSE substr('2D', rownum, 1)
               END) * power(16, length('2D') - rownum) data1
          from dual
        connect by rownum <= length('2D'))

注:

对其它进制可以根据例子将power的底数改成相应的进制就可以了。

本文只是一个例子,大家可以把它封装成一个通用函数进行实用。

大家在试的时候将里面相应的其它进制的数值换成自己的数据就可以了(有多处)。

 
 
上一篇: Oracle中对像名大小写敏感性的深入解析    下一篇: 分享Oracle9i中建立自增字段的最新办法
  相关文档
调整oracle应用系统性能的原则和方法 (1) 01-25
oracle数据库回滚段表空间文件丢失的处理 03-27
移动一个带有lob字段的表到另外一个表空间 03-06
教你手工创建数据库的全部脚本及说明 05-13
在线日志文件都是active或current的现象 02-26
oracle用户密码含有特殊字符应当如何处理 (1) 04-03
直接利用ALTER TABLESPACE修改大文件 04-11
使用flashback query 恢复误删除的数据 11-15
轻松四步帮你解决不能一次创建多表问题 06-17
在操作系统损坏时恢复Oracle10g全过程 05-27
细化解析:Oracle数据库后台进程的功能 09-01
如何使用 10203事件 跟踪 oracle块清除 11-20
Oracle数据库SPFILE文件特点及具体操作 06-03
教你快速的解决oracle缓冲区忙等待事件 11-15
用Oracle 10g列值掩码技术隐藏敏感数据 04-11
怎样选择适合的Oracle优化器 09-29
从Access 2000数据库转移到Oracle 9i 06-17
三方面描述Oracle优化R方法(Method R) 05-27
详细讲解oracle表分区的相关概念及其优点 (1) 03-17
redhat linux as4 安装oracle 10g(包括启动) (1) 08-28
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息