问:怎样实现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) data1from dualconnect by rownum <= length('2D')) |
注释:
对其它进制可以根据例子将power的底数改成相应的进制就可以了,本文只是一个例子,大家可以把它封装成一个通用函数进行实用。 大家在试的时候将里面相应的其它进制的数值换成自己的数据就可以了(有多处)。
关键词标签:SQL十进制转换
热门文章
浅谈JSP JDBC来连接SQL Server 2005的方法
SqlServer2005对现有数据进行分区具体步骤
sql server系统表损坏的解决方法
MS-SQL2005服务器登录名、角色、数据库用户、角色、架构的关系
人气排行 1配置和注册ODBC数据源-odbc数据源配置教程 2如何远程备份(还原)SQL2000数据库 3SQL2000数据库远程导入(导出)数据 4SQL2000和SQL2005数据库服务端口查看或修改 5修改Sql Server唯一约束教程 6SQL Server 2005降级到2000的正确操作步骤 7sql server系统表损坏的解决方法 8浅谈JSP JDBC来连接SQL Server 2005的方法
查看所有0条评论>>