create table tmp3( rootcol varchar2(10), nodecol varchar2(10) ); insert into tmp3 values ('','a001'); insert into tmp3 values ('','b001'); insert into tmp3 values ('a001','a002'); insert into tmp3 values ('a002','a004'); insert into tmp3 values ('a001','a003'); insert into tmp3 values ('a003','a005'); insert into tmp3 values ('a005','a008'); insert into tmp3 values ('b001','b003'); insert into tmp3 values ('b003','b005'); select lpad(' ', level*10,'=') ||'>'|| sys_connect_by_path(nodecol,'/') from tmp3 start with rootcol = 'a001' connect by prior nodecol =rootcol;
转换函数将指定字符从一种类型转换为另一种,通常这类函数遵循如下惯例:函数名称后面跟着待转换类型以及输出类型。
1、BIN_TO_NUM(n1,n2...n) 将一组位向量转换为等价的十进制形式。
例如:SELECT BIN_TO_NUM(1,1,0) FROM DUAL;
2、CAST(c as newtype) 将指定字串转换为指定类型,基本只对字符类型有效,比如char,number,date,rowid等。此类转换有一个专门的表列明了哪种类型可以转换为哪种类型,此处就不作酹述。
例如:SELECT CAST('1101' AS NUMBER(5)) FROM DUAL;
3、CHARTOROWID(c) 将字符串转换为rowid类型
例如:SELECT CHARTOROWID('A003D1ABBEFAABSAA0') FROM DUAL;
4、ROWIDTOCHAR(rowid) 转换rowid值为varchar2类型。返回串长度为18个字节。
例如:SELECT ROWIDTOCHAR(rowid) FROM DUAL;
5、TO_MULTI_BYTE(c) 将指定字符转换为全角并返回char类型字串
例如:SELECT TO_MULTI_BYTE('ABC abc 中华') FROM DUAL;
6、TO_SINGLE_BYTE(c) 将指定字符转换为半角并返回char类型字串
例如:SELECT TO_SINGLE_BYTE('ABC abc中华') FROM DUAL;
1、COALESCE(n1,n2,....n) 返回序列中的第一个非空值
例如:SELECT COALESCE(null,5,6,null,9) FROM DUAL;
2、DUMP(exp[,fmt[,start[,length]]])
dump是个功能非常强悍的函数,对于深入了解oracle存储的人而言相当有用。所以对于我们这些仅仅只是应用的人而言就不知道能将其应用于何处了。此处仅介绍用法,不对其功能做深入分析。
如上所示,dump拥有不少参数。其本质是以指定格式,返回指定长度的exp的内部表示形式的varchar2值。fmt含4种格式:8||10||16||17,分别表示8进制,10进制,16进制和单字符,默认为10进制。start参数表示开始位置,length表示以,分隔的字串数。
例如:SELECT DUMP('abcdefg',17,2,4) FROM DUAL;
3、EMPTY_BLOB,EMPTY_CLOB 这两个函数都是返回空lob类型,通常被用于insert和update等语句以初始化lob列,或者将其置为空。EMPTY表示LOB已经被初始化,只不过还没有用来存储数据。
4、NLS_CHARSET_NAME(n) 返回指定数值对应的字符集名称。
例如:SELECT NLS_CHARSET_NAME(1) FROM DUAL;
5、NLS_CHARSET_ID(c) 返回指定字符对应的字符集id。
例如:SELECT NLS_CHARSET_ID('US7ASCII') FROM DUAL;
6、NLS_CHARSET_DECL_LEN(n1,n2) 返回一个NCHAR值的声明宽度(以字符为单位).n1是该值以字节为单位的长度,n2是该值的字符集ID
例如:SELECT NLS_CHARSET_DECL_LEN(100, nls_charset_id('US7ASCII')) FROM DUAL;
4、BITAND(n1,n2) 位与运算,这个太有意思了,虽然没想到可能用到哪里,详细说明一下:
假设3,9做位与运算,3的二进制形式为:0011,9的二进制形式为:1001,则结果是0001,转换成10进制数为1。
例如:SELECT BITAND(3,9) FROM DUAL;
5、CEIL(n) 返回大于或等于n的最小的整数值
例如:SELECT ceil(18.2) FROM DUAL;
考你一下,猜猜ceil(-18.2)的值会是什么呢
6、FLOOR(n) 返回小于等于n的最大整数值
例如:SELECT FLOOR(2.2) FROM DUAL;
再猜猜floor(-2.2)的值会是什么呢
7、BIN_TO_NUM(n1,n2,....n) 二进制转向十进制
例如:SELECT BIN_TO_NUM(1),BIN_TO_NUM(1,0),BIN_TO_NUM(1,1) FROM DUAL;
|
相关推荐
本人手写。。需要源码的留言。自己可以进行添加功能! 支持 sql2000 sql2005 sql2008 oracle ------------- 帮助你写 sql:视图 存储...sql2005辅助,sql2008辅助,oracle辅助,sql oracle代码生成,sql oracle代码提示
第二篇 非著名函数之单值函数 (一).数值型函数(Number Functions) (二).字符型函数返回字符值(Character Functions Returning Character Values) ...其它辅助函数(Miscellaneous Single-Row Functions)
第一篇 著名函数之单值函数 (一).数值型函数(Number Functions) (二).字符型函数返回字符值(Character Functions Returning Character Values) ...其它辅助函数(Miscellaneous Single-Row Functions)
本书不仅适合于PL/SQL初学者,而且也适合于有经验的PL/SQL编程人员,本书还可以作为Oracle培训班的教材或者辅助材料。 <br> 前言 第1章 PL/SQL综述 1.1 SQL简介 1.2 PL/SQL简介 1.3 ...
可根据查询结果自动生成IN、DECODE等多形式函数的参数,省去你查询手工输入上述函数多参数时的痛苦。 批量处理查询结果集中数据去除多余前后空格,增加对多字段字符串数据标准化,替换或去除数据中任意数据位数据,...
5SQL Server 分区函数146SQL Server 分区方案147SQL 预览147维护147维护MySQL147维护Oracle148维护PostgreSQL152维护SQLite153维护SQL Server153表查看器155网格查看155使用导览栏155编辑记录156排序、查找或替换...
当然,我们也可以把它作为小型数据库的物理备份后的一个逻辑辅助备份,也是不错的建议。对于越来越大的数据库,特别是TB级数据库和越来越多数据仓库的出现,EXP/IMP越来越力不从心了,这个时候,数据库的备份都转向...
具体详情请看下文代码分析。 --查询正在执行的SQL语句 SELECT OSUSER 电脑登录身份, PROGRAM 发起请求的程序, ...SCHEMANAME, B.Cpu_Time 花费cpu的时间, STATUS, B.SQL_TEXT 执行的sql, ...LEFT JOIN V$SQL B ON A.SQL_...
分析了Epicentre模型在Oracle上的投影技术,用G++作为开发工具,采用面向对象的编程方法,开发了实现相应功能的类和一批辅助函数,包括工作集的创建、实例句柄的增加、实例句柄的删除、以及工作集的删除等函数;...
该存储库由三个文件组成:ellipsoid_method 函数、一个名为 separator_oracle_omniscient 的辅助函数和一个包含多个示例的文件。 请参阅有关方法参数的内联注释。 此外,示例的 MATLAB 发布文件附加在 html 文件夹中...
随后《收获,不止SQL优化——抓住SQL的本质》指引大家学会等价改写、过程包优化、高级SQL、分析函数、需求优化这些相关的五大神功。有点头晕,能否少一点套路?淡定,这还是“术”的范畴,依然是教你如何解决问题,...
ˇ £¤Œ˘£' 常见的软件应用 2 代表性软件: Oracle Ingress Informix 空间数据管理专用模块定义操作点、线、面等空间对象的API函数 Oracle Spatial中矢量数据存储 Oracle Spatial: 矢量数据管理: 对矢量数据...
以Oracle 9i为例,介绍了Oracle数据库的安装步骤和Oracle支持的数据类型。在此基础上,介绍了ADO、Pro*C/C++和OCI三个主要Oracle编程接口,对它们的各自功能和特点进行了详细说明,从功能方面、性能方面、开发难度...
包括第1章三维图形世界、第2章OpenGL概述和第3章Oracle与 OCI技术及编程基础。 第1章 介绍了计算机三维图形技术的发展、科学计算可视化技术、三维可视化工程设计的基本概念和发展现状。 第2章 主要对OpenGL...
包括第1章三维图形世界、第2章OpenGL概述和第3章Oracle与 OCI技术及编程基础。 第1章 介绍了计算机三维图形技术的发展、科学计算可视化技术、三维可视化工程设计的基本概念和发展现状。 第2章 主要对OpenGL...
以Oracle 9i为例,介绍了Oracle数据库的安装步骤和Oracle支持的数据类型。在此基础上,介绍了ADO、Pro*C/C++和OCI三个主要Oracle编程接口,对它们的各自功能和特点进行了详细说明,从功能方面、性能方面、开发难度...
以Oracle 9i为例,介绍了Oracle数据库的安装步骤和Oracle支持的数据类型。在此基础上,介绍了ADO、Pro*C/C++和OCI三个主要Oracle编程接口,对它们的各自功能和特点进行了详细说明,从功能方面、性能方面、开发难度...
包括第1章三维图形世界、第2章OpenGL概述和第3章Oracle与 OCI技术及编程基础。 第1章 介绍了计算机三维图形技术的发展、科学计算可视化技术、三维可视化工程设计的基本概念和发展现状。 第2章 主要对OpenGL...
以Oracle 9i为例,介绍了Oracle数据库的安装步骤和Oracle支持的数据类型。在此基础上,介绍了ADO、Pro*C/C++和OCI三个主要Oracle编程接口,对它们的各自功能和特点进行了详细说明,从功能方面、性能方面、开发难度...
以Oracle 9i为例,介绍了Oracle数据库的安装步骤和Oracle支持的数据类型。在此基础上,介绍了ADO、Pro*C/C++和OCI三个主要Oracle编程接口,对它们的各自功能和特点进行了详细说明,从功能方面、性能方面、开发难度...