oracle10g 系统自带函数-subStr,sys_connect_by_path

1,subStr
subSrt是截取字符串函数,下面是详细的例子
   select subStr('hello world',1,4)from dual;  --截取hell world,从第一个字符起,截取
4个字符。
select subStr('hello world',0,4)from dual; --截取hell world,从第一个字符起,截取4个 字符。(注意0和1都表示从第一个字符开始,包括第一个字符)
select subStr('hello world',-3,3)from dual; --截取hell world,从右端第三个字符起,截取3个字符。


2,sys_connect_by_path函数
语法:
Oracle函数:sys_connect_by_path 主要用于树查询(层次查询) 以及 多列转行。其语法一般为:
select ... sys_connect_by_path(column_name,'connect_symbol') from table
start with ... connect by ... prior
实例
--创建测试表
create table emp(
empno varchar2(25), --员工id
ename varchar2(25), --员工名字
mgr varchar2(25) --员工的上级id
);
insert into emp values ('1', 'jim', '7');
insert into emp values ('2', 'tom', '7');
insert into emp values ('3', 'tim', '7');
insert into emp values ('4', 'lily', '7');
insert into emp values ('5', 'mary', '7');
insert into emp values ('6', 'tid', '7');
insert into emp values ('7', 'King', '10');
insert into emp values ('8', 'kenvin', '10');
insert into emp values ('9', 'shema', '8');
insert into emp values ('10', 'john', '0');
insert into emp values ('0', 'root', '');:

测试:
select sys_connect_by_path(ename,'-') tree
from emp
start with ename='root'
connect by prior empno= mgr;


3,右边填充,左边填充函数rpad,lpad
[color=darkred] rpad:
[/color] rpad函数从右边对字符串使用指定的字符进行填充
rpad(string,padded_length,[pad_string])
string 表示:被填充的字符串   
[color=red]padded_length 表示:字节的长度,是返回的字节长度的字符串,如果这个数量比原字符串的字节长度要短,rpad函数将会把字符串截取成从左到右的n个字符;如果正好是中文要被截断,那么这个中文返回的是空格。如:rpad('函数',3) ----返回的是'函 '。
pad_string 是个可选参数,这个字符串是要粘贴到string的右边,如果这个参数未写,rpad函数将会在string的右边粘贴空格。 [/color]
select rpad('supan',33,'0'),length(rpad('supan',33,'0')) from dual;
lpad函数与rpad函数大致差不多。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值