DB2下将16进制转为十进制
来源:互联网 发布:linux日志级别 编辑:程序博客网 时间:2024/05/18 03:42
近期才接触DB2,由于项目要求,需要将表中十六进制字段转为十进制,查了好久只发现DB2有十进制转十六进制的函数HEX,却没有十六进制转十进制的,寻了好久还是没有比较满意的办法,于是自己动手搞了个,感觉还不错!
也总想着养成开始写博客的习惯,故此记录一下,作为写博客的开始吧:
CREATE FUNCTION PT.HEXTOINT
( S_STR VARCHAR(15) )
RETURNS BIGINT
SPECIFIC PT.SQL091011189988811
LANGUAGE SQL
NOT DETERMINISTIC
READS SQL DATA
STATIC DISPATCH
CALLED ON NULL INPUT
EXTERNAL ACTION
INHERIT SPECIAL REGISTERS
RETURN
with s as (select val,length(val) len from (select replace(replace(trim(S_STR),'0x',''),'0X','') val from sysibm.dual ) ),
T (val ,len ) as
(select val,len from s
union all
select s.val,t.len-1 from s,t where t.val=s.val and t.len-1>0)
select sum(power(16,int(seq)-1)*int(str)) from (select rownumber() over(order by len desc ) seq , len,
case upper(substr(val,len,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 upper(substr(val,len,1)) end
str from t )
where trim(str)<>'0'
;
- DB2下将16进制转为十进制
- 任意进制转为十进制
- 请教16进制转为十进制(VFP8)
- IOS 16进制的String串转为十进制数
- Java将其他进制字符串转为十进制和用英文句号分割字符串
- hdoj2031十进制转为任意进制
- 1.1进制转换:十进制转为十六进制
- 1.1进制转换:十进制转为二进制
- C/C++:十进制转为二进制(n进制转为十进制)
- 将整型转为16进制字符串
- 将16进制转为 UIColor
- 将16进制转换为十进制
- c语言将十六进制转为十进制
- 将整型ip转为点分十进制
- 把十进制的数字转为任何进制
- 将一个字节中的数据(16进制),转为有符号的十进制数
- 将16进制的数据转为数组and数组转为16进制
- 将16进制的颜色转为uicolor
- Struts2入门学习
- 加泰罗尼亚与欧猪国家西班牙闹离婚,穷才是根本!
- ElasticSearch入门 第七篇:分析器
- Threading in C#
- 创建企业内部的yum源
- DB2下将16进制转为十进制
- Chrome浏览器安装插件教程
- 泛型之类型擦除
- Kafka设计解析(二)- Kafka High Availability (上)
- mybatis 从入门到总结
- 举例说明了十大ES6功能
- 跟大师学习系统编程---linux时间换算
- JAVA_两方交换数值_不声明第三方变量
- Java 集合系列12之 TreeMap详细介绍(源码解析)和使用示例