巧用一条SQL语句实现其它进制到十进制转换_Mssql数据库教程
教程Tag:暂无Tag,欢迎添加,赚取U币!
推荐:在SQL Server 2008中运用表值参数(TVP)问题: 当我们浏览SQL Server 2008的新特性的时候,我们发现一个很有趣的特性叫做表值参数(Table-Valued Parameter)。你能否给我们详细介绍一下我们可以如何利用这个新特性吗? 专家
巧用一条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')) |
注释:
对其它进制可以根据例子将power的底数改成相应的进制就可以了。
本文只是一个例子,大家可以把它封装成一个通用函数进行实用。
大家在试的时候将里面相应的其它进制的数值换成自己的数据就可以了(有多处)。
分享:SQL Server数据库增强版备份体验老鸟说事:Microsoft SQL Server数据库增强版备份体验 在欧洲,有一首流传很广的民谚: 因为丢失一根铁钉,我们失去了一块马蹄铁; 因为失去一块马蹄铁,我们失去了一匹骏马; 因为失去
相关Mssql数据库教程:
- sql 语句练习与答案
- 深入C++ string.find()函数的用法总结
- SQL Server中删除重复数据的几个方法
- sql删除重复数据的详细方法
- SQL SERVER 2000安装教程图文详解
- 使用sql server management studio 2008 无法查看数据库,提示 无法为该请求检索数据 错误916解决方法
- SQLServer日志清空语句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸载方法(其他版本类似)
- sql server 2008 不允许保存更改,您所做的更改要求删除并重新创建以下表
- SQL Server 2008 清空删除日志文件(瞬间日志变几M)
- Win7系统安装MySQL5.5.21图解教程
- 将DataTable作为存储过程参数的用法实例详解
- 相关链接:
- 教程说明:
Mssql数据库教程-巧用一条SQL语句实现其它进制到十进制转换。