Ø ABS
ABS函数返回一数值的绝对值。
Ø ACOS
ACOS函数返回一数值的反余弦值。结果以弧度表示,且在0到PI之间。
其语法格式如下:
ACOS(number)
其中,number必须是-1与1之间的值,如果超出则报异常
下面的例子显示了1和-1 的反余弦值:
ACOS(1)=0
ACOS(-1)=3.1415927(PI)
Ø ADD_MONTHS
如果,结果月份的天数比开始月份的天数少,那么,也会向回调整以适应有效日期。
SQL> SELECT SYSDATE,ADD_MONTHS(SYSDATE,2),ADD_MONTHS(SYSDATE,4) FROM DUAL;
SYSDATE ADD_MONTHS(SYSDATE,2) ADD_MONTHS(SYSDATE,4)
----------- --------------------- ---------------------
2010-10-31 2010-12-31 19:06:59 2011-2-28 19:06:59
Ø ASCII
SQL> SELECT ASCII('T'),ASCII('TANGYUN') FROM DUAL;
ASCII('T') ASCII('TANGYUN')
---------- ----------------
84 84
如果指定了一个多字符串,该函数将忽略除首字母外的所有字符。
Ø ASCIISTR
用于任意字符集的字符串转换为数据库字符集的ASCII字符串。
SQL> SELECT ASCIISTR('汤云'),ASCIISTR('TANGYUN'),ASCII('TANGYUN'),ASCII('T') FROM DUAL;
ASCIISTR('汤云') ASCIISTR('TANGYUN') ASCII('TANGYUN') ASCII('T')
---------------- ------------------- ---------------- ----------
6C644E91 TANGYUN 84 84
Ø ASIN
ASIN函数返回一数值的反正弦值。结果以弧度表示,且在-PI/2到PI/2之间。
其语法格式如下:
ASIN(number)
其中:number必须是-1与1之间的值,如果超出则报异常
下面的例子显示了1和-1的反正弦值:
ASIN(1)= 1.57079632
ASIN(-1)=-1.57079632
Ø ATAN
ATAN函数返回一数值的反正切值。结果以弧度表示,且在-PI/2到PI/2之间。
其语法格式如下:
ATAN(number)
其中:number必须是-1与1之间的值,如果超出则报异常
下面的例子显示了1和-1 的反正切值:
ATAN(1)= 0.78539816
ATAN(-1)=- 0.78539816
Ø ATAN2
ATAN2函数返回两个数值的反正切值。结果以弧度表示。
其语法格式如下:
ATAN2(first,second)
其中:
first 第一个数
second 第二个数
下面的例子显示了1和-1的反正切值:
ATAN2(1,.5)= 1.107148717
Ø BIN_TO_NUM
BIN_TO_NUM(EXPR1,EXPR2,EXPR3,….)用于将位向量值转换为实际的数值。EXPRn其实就是0或者1,有几个表达式就是第一位就是2的多少次幂。
SQL> SELECT BIN_TO_NUM(0,0,0,0,1) FROM DUAL;
BIN_TO_NUM(0,0,0,0,1)
---------------------
1
SQL> SELECT BIN_TO_NUM(0,0,0,1,1) FROM DUAL;
BIN_TO_NUM(0,0,0,1,1)
---------------------
3
SQL> SELECT BIN_TO_NUM(0,0,1,1,1) FROM DUAL;
BIN_TO_NUM(0,0,1,1,1)
---------------------
7
SQL> SELECT BIN_TO_NUM(0,1,1,1,1) FROM DUAL;
BIN_TO_NUM(0,1,1,1,1)
---------------------
15
SQL> SELECT BIN_TO_NUM(1,1,1,1,1) FROM DUAL;
BIN_TO_NUM(1,1,1,1,1)
---------------------
31
SQL> SELECT BIN_TO_NUM(1,1,1,1,1,1) FROM DUAL;
BIN_TO_NUM(1,1,1,1,1,1)
-----------------------
63
Ø ☆BFILENAME
BFILENAME函数返回一指向磁盘的物理文件的BFILE地址。
其语法格式如下:
BFILENAME(directory,filename)
其中:directory 一个包括指定文件的目录路径字符串。该目录通过命令CREATE DIRECTORY产生。但它不是一个操作系统目录filename指定目录中用户试图指定的文件名字。该文件可以是预先不存在的文件
下面的例子解释了BFILENAME函数的使用情况:
BFILENAME(‘gif_dir’,’book_photo.gif’)
Ø CAST
CAST(EXPR AS TYPE)该函数用于将一个内置数据类型或者集合类型转换成另外一个内置数据类型或者集合类型。
SQL> SELECT CAST('12.12' AS INTEGER) FROM DUAL;
CAST('12.12'ASINTEGER)
---------------------------------------
12
SQL> SELECT CAST(12.12 AS NUMBER(10,0)) FROM DUAL;
CAST(12.12ASNUMBER(10,0))
-------------------------
12
Ø CEIL
返回结果是大于等于输入参数的最小整数。
SQL> SELECT CEIL(-5.999999999) FROM DUAL;
CEIL(-5.999999999)
------------------
-5
Ø CHARTOROWID
CHARTOROWID函数将一个字符串转换成rowid类型。
其语法格式如下:
CHARTOROWID(string)
其中:string 待处理的字符串。该字符串应该能表示一个有效的rowid型数据
下面的例子解释了CHARTOROWID函数的使用情况:
SQL> SELECT ROWID FROM DUAL;
ROWID
------------------
AAAAECAABAAAAgiAAA
SQL> SELECT CHARTOROWID('AAAAECAABAAAAgiAAA') "ROWID" FROM DUAL;
ROWID
------------------
AAAAECAABAAAAgiAAA
Ø CHR
CHR函数就相应的数据库字符集,返回一个指定数值相应的字符。例如,给定一个ASCII值,使用CHR函数返回该数值表示的字符。
SQL> SELECT CHR(10),CHR(65) FROM DUAL;
CHR(10) CHR(65)
------- -------
A
这里的CHR(10) 是一个Tab键。
Ø COALESCE
返回参数中的第一个非空表达式。如果所有的参数表达式都是空值,最终将返回一个空值。
SQL> SELECT COALESCE(NULL,NULL,NULL,3) FROM DUAL;
COALESCE(NULL,NULL,NULL,3)
--------------------------
3
SQL> SELECT NVL(NULL,'a') FROM DUAL;
NVL(NULL,'A')
-------------
A
Ø COMPOSE
COMPOSE(string)用于将输入字符串转换为UNICODE字符串值。
SQL> SELECT COMPOSE(UNISTR('308')) FROM DUAL;
COMPOSE(UNISTR('308'))
------------------------
̈
SQL> SELECT COMPOSE('汤云'||UNISTR('308')) FROM DUAL;
COMPOSE('汤云'||UNISTR('308'
------------------------------
汤云̈
SQL> SELECT COMPOSE('汤云'||UNISTR('191')) FROM DUAL;
COMPOSE('汤云'||UNISTR('191'
------------------------------
汤云Ƒ
SQL> SELECT UNISTR('191') FROM DUAL;
UNISTR('191')
---------------
Ƒ
Ø CONCAT
CONCAT函数将两个输入字符串,组合成一个,并返回结果。与“||”完全相同。
SQL> SELECT CONCAT('TANG','YUN') FROM DUAL;
CONCAT('TANG','YUN')
--------------------
TANGYUN
Ø ☆CONVERT
CONVERT函数把一字符串从一个字符集转换到另一字符集。
Ø COS
COS函数返回一角度的余弦值。结果为弧度值。
其语法格式如下:
COS(angle)
其中:angle 角度值,用弧度表示
下面的例子解释了COS函数的使用情况:
SQL> SELECT ROUND(COS(90*3.14/180),6) FROM DUAL;
ROUND(COS(90*3.14/180),6)
-------------------------
0.000796
SQL> SELECT COS(0) FROM DUAL;
COS(0)
----------
1
Ø COSH
COSH函数返回一角度的双曲余弦值。
其语法格式如下:
COSH(angle)
其中:
angle 角度值,以弧度表示
下面的例子解释了COSH函数的使用情况:
COSH(0)=1
COSH(90*3.14/180)=2.507
将角度值转化成弧度值,可以参考COS函数的有关部门信息
Ø CURRENT_DATE
该函数是Oracle9i新增的函数,用于返回当前会话时区所对应的日期时间。
Ø CURRENT_TIMESTAMP
该函数是Oracle9i新增的函数,用于返回当前会话时区所对应的日期时间。
Ø DBTIMESONE
该函数是Oracle9i新增的函数,用于返回数据库所在的时区。
Ø DECODE
SQL> SELECT DECODE(DUMMY,'Y','YES','N','NO','NONE') "DUMMY1",DECODE(DUMMY,'Y','YES','X','NO','NONE') "DUMMY2" FROM DUAL;
DUMMY1 DUMMY2
------ ------
NONE NO
SQL>SELECT TO_CHAR(TRUNC(BIRTH_DATE,’YEAR’),’YYYY’),
2 COUNT(*)
3 FROM AQUATIC_ANIMAL
4 WHERE TO_CHAR(TRUNC(BIRTH_DATE,’YEAR’),’YYYY’)
5 IN(‘1995’,’1996’,’1997’)
6 GROUP BY TO_CHAR(TRUNC(BIRTH_DATE,’YEAR’),’YYYY’);
TO_C COUNT(*)
--- -------
1995 1
1996 3
1997 1
SQL>SELECT SUM(
DECODE(TO_CHAR(TRUNC(BIRTH_DATE,’YEAR’),’YYYY’),’1995’,1,0))BORN_1995
SUM(DECODE(TO_CHAR(TRUNC(BIRTH_DATE,’YEAR’),’YYYY’),’1996’,1,0))BORN_1996 SUM(DECODE(TO_CHAR(TRUNC(BIRTH_DATE,’YEAR’),’YYYY’),’1997’,1,0))BORN_1997
FROM AQUATIC_ANIMAL
WHERE TO_CHAR(TRUNC(BIRTH_DATE,’YEAR’),’YYYY’)
IN(‘1995’,’1996’,’1997’);
BORN_1995 BORN_1996 BORN_1997
----- ----- -----
1 3 1
Ø DECOPME
用于分解字符串并返回相应的UNICODE字符串,与COMPOSE对应。
Ø DEPTH(n)
用于返回XML解决方案中的UNDER_PATH路径对应的层数。n用于指定相对的层数。
DUMP(EXPR,RETURN_FMT)
用于返回表达式的数据类型代码、长度以及内部表示格式。Return_fmt用于指定返回格式(8:八进制符号,10:十进制符号,16:十六进制符号,17:单个字符),只能在SQL语句中使用。
SQL> SELECT DUMP('TANGYUN',1016) FROM DUAL;
DUMP('TANGYUN',1016)
--------------------------------------------------------
Typ=96 Len=7 CharacterSet=ZHS16GBK: 54,41,4e,47,59,55,4e
SQL> SELECT DUMP('TANGYUN',1017) FROM DUAL;
DUMP('TANGYUN',1017)
-------------------------------------------------
Typ=96 Len=7 CharacterSet=ZHS16GBK: T,A,N,G,Y,U,N
SQL> SELECT DUMP('TANGYUN',0817) FROM DUAL;
DUMP('TANGYUN',0817)
---------------------------
Typ=96 Len=7: T,A,N,G,Y,U,N
Ø ☆EMPTY_BLOB/ EMPTY_CLOB
EMPTY_BLOB函数返回一空的BLOB指针,该指针可以用在INSERT或UPDATE命令中,以初始化BLOB列项。
其具体的语法格式如下:
EMPTY_BLOB()
该函数没有参数。下面的例子说明了如何使用该函数初始化BLOB列,并作为一个新行插入到表中。
INSERT INTO some_table
(blob_column)
VALUES(EMPTY_BLOB());
Ø EXP
EXP函数返回e的一个幂。
SQL> SELECT EXP(2),EXP(3) FROM DUAL;
EXP(2) EXP(3)
---------- ----------
7.38905609 20.0855369
Ø EXTRACT
该函数是Oracle9i新增的函数,用于从日期中取得所需的特定数据(如:年、月、日等)。
SQL> SELECT EXTRACT(DAY FROM SYSDATE),EXTRACT(YEAR FROM SYSDATE) FROM DUAL;
EXTRACT(DAYFROMSYSDATE) EXTRACT(YEARFROMSYSDATE)
----------------------- ------------------------
16 2010
Ø EXTRACT(XMLTYPE_INSTANCE,XPATH_STRING)
返回XML节点下的相应内容。
Ø EXTRACTVALUE(XMLTYPE_INSTANCE,XPATH_STRING)
返回XML节点路径下的值。
Ø FLOOR
FLOOR函数返回一个小于或等于给定十进制数的最大整数。
SQL> SELECT FLOOR(-5.99999999),FLOOR(-5.0000001) FROM DUAL;
FLOOR(-5.99999999) FLOOR(-5.0000001)
------------------ -----------------
-6 -6
Ø GREATEST
GREATEST函数返回一数值列表中的最高数值。可使用GREATEST函数处理数字数据和字符数据。
这里需要注意的是以第一个参数来判断参数是字符型还是数值型。
SQL> SELECT GREATEST('12',102,-12,0,'-15') FROM DUAL;
GREATEST('12',102,-12,0,'-15')
------------------------------
12
SQL> SELECT GREATEST(12,'102',-12,0,'-15') FROM DUAL;
GREATEST(12,'102',-12,0,'-15')
------------------------------
102
Ø ☆HEXTORAW
函数HEXTORAW将一个由十六进制字符组成的字符串转换成一个raw数值。
其具体的语法格式如下:
HEXTORAW(string)
其中:
string 十六进制字符组成的字符串数据
SQL>CREATE TABLE xx (y raw(10));
Table created.
SQL>INSERT INTO xx VALUES(HEXTORAW(‘414243’));
1 row created.
AQL>SELECT DUMP(y) FROM xx;
DUMP(Y)
------------------------
Typ=23 Len=3:65,66,67
注意:在调用函数时,raw项中的数值是精确表示的(十进制数65=十六进制数41)
Ø INITCAP
INITCAP函数接收一字符串,并转换该字符串中的所有单词,以使各单词均以大写字母开头。
SQL> SELECT INITCAP('This is a teST') FROM DUAL;
INITCAP('THISISATEST')
----------------------
This Is A Test
Ø INSTR/INSTRB
INSTR(string,substring[,start[,occurrence]])
INSTR函数返回字符或者字符串的位置,找不到则返回0,occurrence参数指定第几
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24930246/viewspace-1041573/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/24930246/viewspace-1041573/