Oracle SQL 内置函数大全(1)

作者在 2008-05-14 20:35:13 发布以下内容

转自

SQL中的单记录函数

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
---------
9

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.RPADLPAD(粘贴字符)
RPAD
在列的右边粘贴字符
LPAD
在列的左边粘贴字符
SQL> select lpad(rpad('gao',10,'*'),17,'*')from dual;

LPAD(RPAD('GAO',1
-----------------
*******gao*******
不够字符则用*来填满

10.LTRIMRTRIM
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 返回一个数字en次方根
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)
--------- --------- -------------
0 .69314718     .99999999

25.LOG(n1,n2) 返回一个以n1为底n2的对数
SQL> select log(2,1),log(2,4) from dual;

LOG(2,1) LOG(2,4)
--------- ---------
0         2

技术文章 | 阅读 1833 次
文章评论,共0条
游客请输入验证码