Oracle中用SQL语句实现进制间互相转换

文章作者 100test 发表时间 2007:07:12 12:50:12
来源 100Test.Com百考试题网


本文用实际代码来实现进制间转换。

对其它进制可以根据例子将power的底数改成相应的进制就可以了。本文只是一个例子,大家可以把它封装成一个通用函数进行实用。大家在试的时候将里面相应的其它进制的数值换成自己的数据就可。

二进制转换十进制


0select sum(data1)

from (0select substr(1101, rownum, 1) * power(2, length(1101) - rownum) data1

from dual

      connect by rownum <= length(1101))

八进制转换十进制

0select sum(data1)

from (0select substr(1101, rownum, 1) *

 power(8, length(1101) - rownum) data1

from dual

      connect by rownum <= length(1101))

十六进制转换十进制

0select sum(data1)

from (0select (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))

src="/oracle/js/wxgg_oracle.js">

相关文章


如何导航Oracle数据库公共联机文件
ORACLE数据库进程简介
Oracle中用GROUPINGSETS分组自定义汇总
详细讲述PLSQL的书写及语法
Oracle中用SQL语句实现进制间互相转换
系统损坏情况下恢复Oracle10g数据库
oracle与用户角色权限相关的视图
SQLServer临时表与Oracle临时表
虚拟机RedHatLinux9安装Oralce9i全过程
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛