ORACLE中用一条SQL实现其它进制到十进制的转换

原创 2006年06月05日 14:12:00

ORACLE中用一条SQL实现其它进制到十进制的转换

注:

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

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

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

 

-----二进制转换十进制-----------------
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'))

叶正盛

2006-06-05


Oracle中的二进制、八进制、十进制、十六进制相互转换函数

Oracle中的二进制、八进制、十进制、十六进制相互转换函数   大家经常遇到进制转换的问题,网上搜到的转换只是部分十进制与其它进制的转换,所以我把自己写的转换函数提供给大家,4种进制共12个转换...

【转】Oracle中的二进制、八进制、十进制、十六进制相互转换函数

转自: http://wallimn.javaeye.com/blog/561863 大家经常遇到进制转换的问题,网上搜到的转换只是部分十进制与其它进制的转换,所以我把自己写的转换函数提供给大家,4种...
  • zhq1209
  • zhq1209
  • 2011年01月12日 14:22
  • 836

【Python】Python实现进制转换(二进制、十进制和十六进制)及注意事项

使用内置函数实现进制转换实现比较简单,主要用到以下函数: bin()、oct()、int()、hex() 下面分别详解一下各个函数的使用(附实例) 第一部分:其他进制转十进制 1.二进制转十进...
  • ghxbob
  • ghxbob
  • 2013年10月05日 17:43
  • 3270

用C语言代码实现n进制数转换为十进制数

用C语言代码实现n进制数转换为十进制数 为了实现进制之间的相互转化,编程实现输入任意一个数并输入该数的进制,然后将其转换为10进制并输出。 主要思路是将输入的数存入一个一维数组中然后进行相应处...

C语言:十进制到八进制转换(用栈实现)

/* 十进制到其它进制的转换 */ # include # include # define N 8 //要转换成的进制 # define INIT_SIZE 5 //栈的初始空间大小...

顺序栈实现十进制和八进制之间的转换

顺序栈实现十进制和八进制之间的转换 (1)首先实现栈的初始化,既申请固定大小的数组空间,存储数据,用到的方法是 int InitStack(  struct  sqstack  *s );  (2)接...

代码实现十进制与其他进制之间的转换

众所周知,计算机底层都是用二进制数做运算,但我们生活中用到的最多的却是十进制,当然还有八进制与十六进制。日常生活中进行进制转换时,都是一些繁琐重复的过程,现在,我们可以用JAVA语言中最原始的代码实现...

用栈实现十进制到任意进制的转换

//栈的应用 //进制转换 //算法依赖于原理: N=(N div d)*d +N mod d; #include using namespace std; #include "sq_stack...

用栈(链式)实现十进制到其他进制的转换:

用栈实现十进制到其他进制的转换,此处最大进制设为十六进制,可以自行拓展。 主要方法:除商倒数取余。栈节点,使用的是链栈结构...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ORACLE中用一条SQL实现其它进制到十进制的转换
举报原因:
原因补充:

(最多只允许输入30个字)