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'))
一 16進位制轉換為10進位制
可以透過to_number函式實現
SQL> select to_number(’19f’,’xxx’) from dual;
TO_NUMBER(’19F’,’XXX’)
----------------------
415
SQL> select to_number(’f’,’xx’) from dual;
TO_NUMBER(’F’,’XX’)
-------------------
15
二 10進位制轉換為16進位制
可以透過to_char函式轉換
SQL> select to_char(123,’xxx’) from dual;
TO_C
----
7b
SQL> select to_char(4567,’xxxx’) from dual;
TO_CH
-----
11d7
三 2進位制轉換為10進位制
從Oracle9i開始,提供函式bin_to_num進行2進位制到10進位制的轉換
SQL> select bin_to_num(1,1,0,1) a,bin_to_num(1,0) b from dual;
A B
----- ----------
13 2
SQL> select bin_to_num(1,1,1,0,1) from dual;
BIN_TO_NUM(1,1,1,0,1)
---------------------
29
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9099175/viewspace-904124/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle 給的轉換函式實現 十六進位制---->十進位制Oracle函式
- Oracle二進位制與十進位制轉換Oracle
- Qt進位制轉換(十進位制轉十六進位制)QT
- 十進位制轉換任意進位制--鏈棧實現
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- 【進位制轉換】十進位制與十六進位制相互轉換方法
- Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 【轉帖】Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- 二進位制,八進位制,十進位制,十六進位制之間的轉換
- 十六進位制轉換為十進位制
- 進位制之間的轉換之“十六進位制 轉 十進位制 轉 二進位制 方案”
- Oracle中十進位制與十六進位制轉換程式Oracle
- sql實現10進位制16進位制轉換函式SQL函式
- 【進位制轉換】二進位制、十六進位制、十進位制、八進位制對應關係
- Python 進位制互相轉換(二進位制、十進位制和十六進位制)Python
- 一看就懂二進位制、八進位制、十六進位制數轉換十進位制
- JavaScript十進位制轉換為二進位制JavaScript
- 二進位制轉十進位制快速轉換方法
- 大話二進位制,八進位制,十進位制,十六進位制之間的轉換
- 計算機基礎進位制轉換(二進位制、八進位制、十進位制、十六進位制)計算機
- JAVA 二進位制,八進位制,十六進位制,十進位制間進行相互轉換Java
- 遞迴函式實現十進位制正整數轉換為二進位制,八進位制,十六進位制遞迴函式
- ORACLE使用函式對二進位制、十進位制、十六進位制數互相轉換Oracle函式
- 1474 十進位制轉m進位制+1475 m進位制轉十進位制
- JavaScript 進位制轉換(2進位制、8進位制、10進位制、16進位制之間的轉換)JavaScript
- n進位制轉十進位制
- 十進位制轉十六進位制
- 十進位制與二進位制互相轉換指南
- (轉)【iOS 開發】二進位制、十進位制、十六進位制相互轉換的方法iOS
- 45:十進位制到八進位制
- 46:八進位制到十進位制
- Go語言實現十進位制轉換成二、八、十六進位制Go
- python進位制轉換(二進位制、十進位制和十六進位制)及注意事項Python
- [計算機基礎] 計算機進位制轉換:二進位制、八進位制、十進位制、十六進位制計算機
- 十六進位制數轉十進位制
- JavaScript 二進位制數字轉換為十進位制JavaScript
- js二進位制和十進位制轉換程式碼JS