宋运奎|云开_skysongyunkui.blog.chinaunix.net
Hero--008
MiBDP,数据开发、项目团队、数据应用和产品在路上,金融保险、互联网网游、电商、新零售行业、大数据和AI在路上。对数仓、模型、ETL、数据产品应用了解。DTCC 2013演讲嘉宾,曾做过两款大获好评的数据产品平台。知识星球ID:35863277
全部博文(148)
2020年(1)
2019年(2)
2017年(2)
2016年(5)
2015年(1)
2014年(1)
2013年(6)
2012年(5)
2011年(24)
2010年(28)
2009年(1)
2008年(6)
2007年(30)
2006年(36)
jelon521
fengzhan
liuzhili
china_la
五岳之巅
CU博客助
小雅贝贝
xuequans
徐丶昌隆
li183310
清华同方
长了翅膀
天翼云开
Sea05973
zma1111
小胡胡胡
分类: Oracle
2010-12-24 17:25:23
--十进制转二进制 create or replace function number_2_bit(v_num number) return varchar is v_rtn varchar(2000); v_n1 number; v_n2 number; begin v_n1 := v_num; loop v_n2 := mod(v_n1, 2); v_n1 := trunc(v_n1 / 2); v_rtn := to_char(v_n2) || v_rtn; exit when v_n1 = 0; end loop; return v_rtn; end; --二进制转十进制 create or replace function bit_2_number(v_char varchar) return number is v_rtn number(10); v_n1 number; v_n2 number; begin SELECT SUM(data1) into v_rtn FROM (SELECT substr(v_char, rownum, 1) * power(2, length(v_char) - rownum) data1 FROM dual CONNECT BY rownum <= length(v_char)); return v_rtn; end;
SQL> select bit_2_number('10001100000000011001111111111') from dual; BIT_2_NUMBER('1000110000000001
------------------------------
293614591
SQL> select number_2_bit(571231007) from dual; NUMBER_2_BIT(571231007) ----------------------------- 100010000011000100101100011111
上一篇:oracle分区表新增主分区及子分区语句
下一篇:mysql安装
登录 注册