前一篇博客练习了一些字符函数,之后自己又去下查阅了相关的资料,上一篇博客中还有很多的
字符函数没有练习到,这次主要是对上次的一些未用到的字符函数进行一些补充练习。
ascii()
返回与指定的字符对应的十进制数,若为字符串则返回字符串首字母的十进制数。select ascii('AAA') A,ascii('aa') a,ascii('0') ZERO , ascii(' ') space from dual;
chr()
与ascii函数相反,给出整数返回特定的字符select chr(65) x,chr(97) y from dual;
instr(C1,C2,I,J)
在一个字符串中搜索指定的字符,返回指定额字符的位置,只检索一次
C1:被搜索的字符串
C2:希望搜索的字符串
I:搜索的开始位置,默认为1,若果为正,从左到右开始检索,反之。为0不检索
J:出现的位置:tips:这个位置指的是第几次出现。默认为1,为负或0则系统报错,
例子:select instr('Oracle hello Oracle hello','Oracle',-1,2) from dual;
ltrim、rtrim
select RTRIM('hello oracle','oracle') from dual;--结果为hello:删除右边的‘oracle’
soundex
很有意思的一个函数返回一个与给定字符串读音相同的字符串
create table test_soundex ( username varchar2(20) ); insert into test_soundex values('Kiritor'); insert into test_soundex values('Kirito'); insert into test_soundex values('kiritor'); insert into test_soundex values('Alex'); select username from test_soundex where soundex(username)=soundex('Kiritor');
字符串处理函数中有一个TRIM函数笔者会找个时间详细的理解、练习。