本文只是一个例子,大家可以把它封装成一个通用函数进行实用。
大家在试的时候将里面相应的其它进制的数值换成自己的数据就可以了(有多处)。
selectsum(data1)
from(selectsubstr('1101',rownum,1)*power(2,length('1101')-rownum)data1
fromdual
connectbyrownum<=length('1101'))
selectsum(data1)
from(selectsubstr('1101',rownum,1)*power(8,length('1101')-rownum)data1
fromdual
connectbyrownum<=length('1101'))
selectsum(data1)
from(select(CASEupper(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'
ELSEsubstr('2D',rownum,1)
END)*power(16,length('2D')-rownum)data1
fromdual
connectbyrownum<=length('2D'))