`

Oracle中如何进行进制转换

 
阅读更多
16进制转换为10进制
可以通过to_number函数实现,如:
select to_number('c11f','xxxx') from dual;

10进制转换为16进制
可通过to_char函数转换,如:
select to_char(3000,'xxx') from dual;

2进制转换为10进制
从Oracle9i开始,提供函数bin_to_num进行2进制到10进制的转换,如:
select bin_to_num(1,1,0,1) a,bin_to_num(1,0) b from dual;

进制转换也可以通过自定义函数实现
看看Tom给出的例子:
create or replace function to_base( p_dec in number, p_base in number )
return varchar2
is
l_str varchar2(255) default NULL;
l_num number default p_dec;
l_hex varchar2(16) default '0123456789ABCDEF';
begin
if ( trunc(p_dec) <> p_dec OR p_dec < 0 ) then
raise PROGRAM_ERROR;
end if;
loop
l_str := substr( l_hex, mod(l_num,p_base)+1, 1 ) || l_str;
l_num := trunc( l_num/p_base );
exit when ( l_num = 0 );
end loop;
return l_str;
end to_base;
/


create or replace function to_dec
( p_str in varchar2,
p_from_base in number default 16 ) return number
is
l_num number default 0;
l_hex varchar2(16) default '0123456789ABCDEF';
begin
for i in 1 .. length(p_str) loop
l_num := l_num * p_from_base + instr(l_hex,upper(substr(p_str,i,1)))-1;
end loop;
return l_num;
end to_dec;
/
show errors

create or replace function to_hex( p_dec in number ) return varchar2
is
begin
return to_base( p_dec, 16 );
end to_hex;
/
create or replace function to_bin( p_dec in number ) return varchar2
is
begin
return to_base( p_dec, 2 );
end to_bin;
/
create or replace function to_oct( p_dec in number ) return varchar2
is
begin
return to_base( p_dec, 8 );
end to_oct;
/




分享到:
评论

相关推荐

    oracle 10进制转34进制 sql

    一个SQL脚本函数,10进制转换为34进制。34进制指以0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、G、H、J、K、L、M、N、P、Q、R、S、T、U、V、W、X、Y、Z为基数做累加。

    oracle_34进制转10进制_10进制转34进制_生成34进制最大编码

    实现10进制和34进制之间的转换,资源包含三个Oracle自定义函数,分别为: 34进制转换为10进制; 10进制转换为34进制; 生成34进制的最大编码; 欢迎提宝贵意见! 799192594@qq.com

    SQL脚本函数 34进制转换为10进制

    一个SQL脚本函数,34进制转换为10进制。36进制指以0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、G、H、J、K、L、M、N、P、Q、R、S、T、U、V、W、X、Y、Z为基数做累加。

    Oracle中用SQL语句实现进制间互相转换

    本文介绍了在Oracle中用SQL语句实现进制间互相转换的方法。

    二进制、八进制、十进制、十六进制-相互转换.jar

    二进制 八进制 十进制 十六进制 相互转换 jar 含源代码 运行前安装JRE先,下载地址: http://download.oracle.com/otn-pub/java/jdk/6u29-b11/jre-6u29-windows-i586.exe 本程序用Java编写,适合java爱好者使用

    用一条SQL 实现其它进制到十进制的转换

    本文举例介绍了ORACLE中用一条SQL实现其它进制到十进制的转换。

    Oracle SQL 内置函数大全(3)

    43.CONVERT(c,dset,sset) 将源字符串 sset从一个语言...44.HEXTORAW 将一个十六进制构成的字符串转换为二进制 45.RAWTOHEXT 将一个二进制构成的字符串转换为十六进制 46.ROWIDTOCHAR 将ROWID数据类型转换为字符类型

    Oracle数据转储时字符集的转换规律

    在Export过程中,如果源数据库字符集与Export用户会话字符集不一致,会发生字符集转换,并在导出的二进制格式Dmp文件的头部几个字节中存储Export用户会话字符集的ID号。在这个转换过程中可能发生数据的丢失。 正确...

    oracle经典例子

    oracle经典例子 很好 有过程有查找方式 进制转换 等等

    OracleBlobToJPG

    将 Oracle 数据库中的 Blob 类型字段 导出到本地(Blob中存储类型为JPG)

    构建最高可用Oracle数据库系统 Oracle 11gR2 RAC管理、维护与性能优化

    5.3.4 RAC中的SCN 5.4本章小结 第6章 RAC的高可用性连接 6.1 Oracle Net Service 6.1.1 Oracle Net结构 6.1.2 Oracle Net命名方法 6.1.3 Oracle Net工作原理 6.1.4 Oracle Net Listener工作原理 6.1.5 JDBC...

    oracle函数大全

    oracle函数大全 tan tanh trunc 字符类型转换 十六精致构成转化二进制

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

     数据查询语言 (Data Query Language, DQL) 是SQL语言中,负责进行数据查询而不会对数据本身进行修改的语句,这是最基本的SQL语句。例如:SELECT(查询)  数据控制语言Data Controlling Language(DCL),用来...

    Oracle Database 11g初学者指南--详细书签版

    7.1.3 Oracle 二进制文件 179 7.1.4 参数文件 179 7.1.5 控制文件 180 7.1.6 重做日志 180 7.1.7 撤消段 180 7.1.8 检查点 180 7.1.9 归档日志 181 7.1.10 数据文件、表空间、段、分区和块 182 7.1.11 转储...

    oracle中dblink参数配置1

    D.3.2 HS_DB_INTERNAL_NAME属性描述默认值01010101值的范围1转换为16十六进制字符指定一个唯一的十六进制数字,标识异构服务代理连接

    oracle 12c 数据库 教程

    Spfile:二进制,9i 之后 Pfile:文本,9i 之前 6 可以将 spfile 转换为 pfile 6 注意:scope 的取值有三个:memory、spfile、both 7 一个表空间(tablespace)由一组段组成 8 Tablespaces(表...

    oracle知识简介

    RAW:这是一种变长的二进制数据类型,采用这种数据类型存储的数据不会发生字符集的转换,可以把它看做是由数据库存储的信息的二进制字节串。最多可以存储2000字节 LONG RAW 能存储2GB的二进制信息,建议所有开发中都...

    mybatis调用orclae存储过程

    mybatis调用orclae存储过程

    Oracle9i的init.ora参数中文说明

    正常情况下, WHERE 子句中进行的比较是二进制的, 但语言比较则需要 NLSSORT 函数。可以使用 NLS_COMP 指定必须根据NLS_SORT 会话参数进行语言比较。 值范围: Oracle8i National Language Support Guide 中指定的...

    循序渐进Oracle:数据库的字符集和字符集文件

    复制到浏览器中打开或者点击“阅读原文”),介绍《循序渐进Oracle》第三章的3.1-3.4节:字符集的基本知识、数据库的字符集、字符集文件及字符支持、NLS_LANG的设置与影响、导入导出及字符转换。 Oracle全球支持(即...

Global site tag (gtag.js) - Google Analytics