作者:葉正盛
對其它進(jìn)制可以根據(jù)例子將power的底數(shù)改成相應(yīng)的進(jìn)制就可以了。
本文只是一個(gè)例子,大家可以把它封裝成一個(gè)通用函數(shù)進(jìn)行實(shí)用。
大家在試的時(shí)候?qū)⒗锩嫦鄳?yīng)的其它進(jìn)制的數(shù)值換成自己的數(shù)據(jù)就可以了(有多處)。
-----二進(jìn)制轉(zhuǎn)換十進(jìn)制-----------------
select sum(data1)
from (select substr('1101', rownum, 1) * power(2, length('1101') - rownum) data1
from dual
connect by rownum <= length('1101'))
-----八進(jìn)制轉(zhuǎn)換十進(jìn)制-----------------
select sum(data1)
from (select substr('1101', rownum, 1) * power(8, length('1101') - rownum) data1
from dual
connect by rownum <= length('1101'))
-----十六進(jìn)制轉(zhuǎn)換十進(jìn)制-----------------
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'))
更多軟考資料請?jiān)L問:考試吧軟件水平考試欄目
希望與更多網(wǎng)友交流,請進(jìn)入考試吧軟件水平考試論壇
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |