oracle字符串函数介绍

来源:互联网 发布:淘宝网页制作软件 编辑:程序博客网 时间:2024/05/21 14:57

字符串操作函数
Concat,length,substr,instr,trim,replace,lpad,rpad

一。lower 小写,upper 大写,initcap 首字母大写 

Select lower(ename),upper(ename),initcap(ename) from emp;
LOWER(ENAM UPPER(ENAM INITCAP(EN
---------- ---------- ----------
smith   SMITH    Smith
小写 大写 首字母大写

select lower('mf TR'),upper('mf TR'),initcap('mf TR')from dual
mf tr MF TR Mf Tr
Dual是虚表,让我们用表的形式来访问函数的值。

二。concat 将两个字符连接到一起

select ename,job,concat(ename,job) from emp;
MILLER   CLERK    MILLERCLERK

三。length

select length('张三') from dual;--按照字  2
select lengthb('张三') from dual;--按字节  6
select lengthc('张三') from dual;--unicode的长度  2

四。substr

substr(字符串,m,n),m是从第几个字符开始,如果为负的意思是从后边的第几个开始。N是数多少个,
如果不说就是一直到字符串的结尾。

select ename,substr(ename,1,1) "first",substr(ename,-1) "last"from emp
ENAME    first    last
---------- -------------------- ----
SMITH     S      H

五。instr

求子串在父串中的位置,0表示没有在父串中找到该子串

select ename,instr(ename,'A') "A在第几位" from emp;
ENAME A在第几位
---------- ----------
SMITH 0
ALLEN 1
WARD 2

六。trim 截断字符串和添加字符串的函数

截断字符串和添加字符串的函数
SQL> select trim(leading 'a' from 'aaaaabababaaaaa') from dual;
TRIM(LEADING'A'FROM'AAAAABABAB
--------------------------------
bababaaaaa
截掉连续的前置的a
SQL> select trim(trailing 'a' from 'aaaaabababaaaaa') from dual;
TRIM(TRAILING'A'FROM'AAAAABABA
--------------------------------
aaaaababab
截掉连续的后置的a
SQL> select trim(both 'a' from 'aaaaabababaaaaa') from dual;
TRIM(BOTH'A'FROM'AAAAABABABAAA
--------------------------------
babab
截掉连续的前置和后置的a
SQL> select trim('a' from 'aaaaabababaaaaa') from dual;
TRIM('A'FROM'AAAAABABABAAAAA')
--------------------------------
Babab
如果不说明是前置还是后置就是both全截断。
Trim函数是截掉头或者尾连续的字符,一般我们的用途是去掉空格。
trim只去头和尾的空格,中间的不管

七。lpad rpad  左铺垫和右铺垫

20是总共铺垫到多少位,-是要铺垫的字符串。

SQL> select lpad(ename,20,'-') ename,rpad(ename,20,'-') ename from emp;
ENAME ENAME
---------------------------------------- ------------------------------
---------------SMITH SMITH---------------
---------------ALLEN ALLEN---------------

Lpad左铺垫,rpad右铺垫,一般的用途是美化输出的结果。
如果位数不足,按照截取后的结果显示,不报错。

 

 

 

 

 

 

 

原创粉丝点击