当前位置:数据库 > Oracle >>

oracle内置字符和字符串处理函数

oracle内置字符和字符串处理函数
 
1.ASCII 
返回与指定的字符对应的十进制数; 
SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual; 
 
A         A      ZERO     SPACE 
--------- --------- --------- --------- 
65        97        48        32 
 
2.CHR 
给出整数,返回对应的字符; 
SQL> select chr(54740) zhao,chr(65) chr65 from dual; 
 
ZH C 
-- - 
赵 A 
 
3.CONCAT 
连接两个字符串; 
SQL> select concat('010-','88888888')||'转23'  高乾竞电话 from dual; 
 
高乾竞电话 
---------------- 
010-88888888转23 
 
4.INITCAP 
返回字符串并将字符串的第一个字母变为大写; 
SQL> select initcap('smith') upp from dual; 
 
UPP 
----- 
Smith 
 
5.INSTR(C1,C2,I,J) 
在一个字符串中搜索指定的字符,返回发现指定的字符的位置; 
C1    被搜索的字符串 
C2    希望搜索的字符串 
I     搜索的开始位置,默认为1 
J     出现的位置,默认为1 
SQL> select instr('oracle traning','ra',1,2) instring from dual; 
 
INSTRING 
--------- 
 
6.LENGTH 
返回字符串的长度; 
SQL> select name,length(name),addr,length(addr),sal,length(to_char(sal)) from .nchar_tst; 
 
NAME   LENGTH(NAME) ADDR             LENGTH(ADDR)       SAL LENGTH(TO_CHAR(SAL)) 
------ ------------ ---------------- ------------ --------- -------------------- 
高乾竞            3 北京市海锭区                6   9999.99                    7 
 
7.LOWER 
返回字符串,并将所有的字符小写 
SQL> select lower('AaBbCcDd')AaBbCcDd from dual; 
 
AABBCCDD 
-------- 
aabbccdd 
 
8.UPPER 
返回字符串,并将所有的字符大写 
SQL> select upper('AaBbCcDd') upper from dual; 
 
UPPER 
-------- 
AABBCCDD 
 
9.RPAD和LPAD(粘贴字符) 
RPAD  在列的右边粘贴字符 
LPAD  在列的左边粘贴字符 
SQL> select lpad(rpad('gao',10,'*'),17,'*')from dual; 
 
LPAD(RPAD('GAO',1 
----------------- 
*******gao******* 
不够字符则用*来填满 
 
10.LTRIM和RTRIM 
LTRIM  删除左边出现的字符串 
RTRIM  删除右边出现的字符串 
SQL> select ltrim(rtrim('   gao qian jing   ',' '),' ') from dual; 
 
LTRIM(RTRIM(' 
------------- 
gao qian jing 
 
11.SUBSTR(string,start,count) 
取子字符串,从start开始,取count个 
SQL> select substr('13088888888',3,8) from dual; 
 
SUBSTR(' 
-------- 
08888888 
 
12.REPLACE('string','s1','s2') 
string   希望被替换的字符或变量 
s1       被替换的字符串 
s2       要替换的字符串 
SQL> select replace('he love you','he','i') from dual; 
 
REPLACE('HELOVEYOU','HE','I') 
------------------------------ 
i love you 
 
13.SOUNDEX 
返回一个与给定的字符串读音相同的字符串 
SQL> create table table1(xm varchar(8)); 
SQL> insert into table1 values('weather'); 
SQL> insert into table1 values('wether'); 
SQL> insert into table1 values('gao'); 
 
SQL> select xm from table1 where soundex(xm)=soundex('weather'); 
 
XM 
-------- 
weather 
wether 
 
14.TRIM('s' from 'string') 
LEADING   剪掉前面的字符 
TRAILING  剪掉后面的字符 
如果不指定,默认为空格符 
 
15.ABS 
返回指定值的绝对值 
SQL> select abs(100),abs(-100) from dual; 
 
ABS(100) ABS(-100) 
--------- --------- 
100       100 
 
16.ACOS 
给出反余弦的值 
SQL> select acos(-1) from dual; 
 
ACOS(-1) 
--------- 
3.1415927 
 
17.ASIN 
给出反正弦的值 
SQL> select asin(0.5) from dual; 
 
ASIN(0.5) 
--------- 
.52359878 
 
18.ATAN 
返回一个数字的反正切值 
SQL> select atan(1) from dual; 
 
ATAN(1) 
--------- 
.78539816 
 
19.CEIL 
返回大于或等于给出数字的最小整数 
SQL> select ceil(3.1415927) from dual; 
 
CEIL(3.1415927) 
--------------- 
      4 
 
20.COS 
返回一个给定数字的余弦 
SQL> select cos(-3.1415927) from dual; 
 
COS(-3.1415927) 
--------------- 
     -1 
 
21.COSH 
返回一个数字反余弦值 
SQL> select cosh(20) from dual; 
 
COSH(20) 
--------- 
242582598 
 
22.EXP 
返回一个数字e的n次方根 
SQL> select exp(2),exp(1) from dual; 
 
EXP(2)    EXP(1) 
--------- --------- 
7.3890561 2.7182818 
 
23.FLOOR 
对给定的数字取整数 
SQL> select floor(2345.67) from dual; 
 
FLOOR(2345.67) 
-------------- 
  2345 
 
24.LN 
返回一个数字的对数值 
SQL> select ln(1),ln(2),ln(2.7182818) from dual; 
 
LN(1)     LN(2) LN(2.7182818) 
--------- -
Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,