ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oralce函数大全连载(一)A-I

oralce函数大全连载(一)A-I

原创 Linux操作系统 作者:流浪天际 时间:2011-06-11 15:47:18 0 删除 编辑
本连载内容转自搜狐空间。

ABS

返回指定值的绝对值

SQL> select abs(100),abs(-100) from dual;

 ABS(100) ABS(-100)
--------- ---------
      100       100

ACOS

给出反余弦的值

SQL> select acos(-1) from dual;

 ACOS(-1)
---------
3.1415927

ADD_MONTHS

ADD_MONTHS(,i)增加或减去月份,返回日期d加上i个月后的结果。i可以使任意整数。如果i是一个小数,那么数据库将隐式的他转换成整数,将会截去小数点后面的部分。
SQL> select to_char(add_months(to_date('199912','yyyymm'),2),'yyyymm') from dual;

TO_CHA
------
200002
SQL> select to_char(add_months(to_date('199912','yyyymm'),-2),'yyyymm') from dual;

TO_CHA
------
199910

Ascii

返回与指定的字符对应的十进制数;
SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;

        A         A      ZERO     SPACE
--------- --------- --------- ---------
       65        97        48        32

逆函数是CHR()

ASIN

给出反正弦的值
SQL> select asin(0.5) from dual;

ASIN(0.5)
---------
.52359878

ATAN

返回一个数字的反正切值
SQL> select atan(1) from dual;

  ATAN(1)
---------
.78539816

ATAN2

Atan2(n,m):该函数用于返回数字n除以数字m的反正切值。输入值除了m不能为0外,可以是任意数字(m不能为0),输出值的单位为弧度。

AVG

返回数值的平均值。缺省设置为ALL

BFILENAME(dir,file)

指定一个外部二进制文件,dir是一个directory类型的对象,file为一文件名。函数返回一个空的BFILE位置值指示符,函数用于初始化BFILE变量或者是BFILE列。
SQL>insert into file_tb1 values(bfilename('lob_dir1','image1.gif'));

CEIL

返回大于或等于给出数字的最小整数
SQL> select ceil(3.1415927) from dual;

CEIL(3.1415927)
---------------
              4

CHARTOROWID

函数将c转换为RWID数据类型

SELECT test_id from test_case where rowid=CHARTORWID(''AAAA0SAACAAAALiAAA'')

CHR

给出整数,返回对应的字符;

SQL> select chr(54740) zhao,chr(65) chr65 from dual;

ZH C

-- -

 A

CONCAT

连接两个字符串;

SQL> select concat('010-','88888888')||'23'  高乾竞电话 from dual

高乾竞电话
----------------
010-88888888
23

CONVERT(c,dset,sset)

将源字符串 sset的字符从一个语言字符集转换到另一个目的dset字符集
SQL> select convert('strutz','we8hp','f7dec') "conversion" from dual;

conver
------
strutz

COS

返回一个给定数字的余弦
SQL> select cos(-3.1415927) from dual;

COS(-3.1415927)
---------------
             -1

COSH

返回n的双曲余玄值,为数字。
select COSH(<1.4>) FROM dualCOSH(1.4)2.15089847

SQL> select cosh(20) from dual;

 COSH(20)
---------
242582598

COUNT

COUNT({*|DISTINCT|ALL} )

返回查询中行的数目,缺省设置是ALL,*表示返回所有的行

select area_id,min(area_description),count(area_id) from code_city

group by area_id

order by count(*) desc

SQL> select count(null) from emp;

COUNT(NULL)

-----------

          0

SQL> select count('') from emp;

 COUNT('')

----------

         0

SQL> select count('1') from emp;

COUNT('1')

----------

         7   

如果参数填上某个列,count会统计select返回结果集中这些列不为空的这些行。

Select count(*) ---slow

Count(1),--fast

Count(rowid)—fast

From emp;

CURRENT_DATE

该函数用于返回当前会话时区的日期时间。

CURRENT_TIMESTAMP

该函数用于返回当前会话时区的日期时间。

DBTIMEZONE

该函数用于返回数据库所在的时区。

DECODE

x是一个表达式,m1是一个匹配表达式,xm1比较,如果m1等于x,那么返回r1,否则,xm2比较,依次类推m3,m4,m5....直到有返回结果。

DEREF

DUMP(s,fmt,start,length)

DUMP函数以fmt指定的内部数字格式返回一个VARCHAR2类型的值

SQL> col global_name for a30
SQL> col dump_string for a50
SQL> set lin 200
SQL> select global_name,dump(global_name,1017,8,5) dump_string from global_name;

GLOBAL_NAME                    DUMP_STRING
------------------------------ --------------------------------------------------
ORACLE.WORLD                   Typ=1 Len=12 CharacterSet=ZHS16GBK: W,O,R,L,D

EMPTY_BLOB()EMPTY_CLOB()

这两个函数都是用来对大数据类型字段进行初始化操作的函数

EXP

返回一个数字en次方根
SQL> select exp(2),exp(1) from dual;

   EXP(2)    EXP(1)
--------- ---------
7.3890561 2.7182818

EXTRACT

该函数用于从日期时间中取得所需的特定数据(年份,月份和天)

Sql>select extract(year from sysdate) from dual;

FLOOR

返回小于或等于数字n的最大整数。

SQL> select floor(2345.67) from dual;

FLOOR(2345.67)
--------------
          2345

FROM_TZ

该函数用于将特定时区的timestamp值转变为timestamp with time zone值。

SQL>select  from_tz(timestamp'2003-03-28 08:00:00','3:00') from dual;

28-3 -03 08.00.00.000000000 上午 +03:00 

GREATEST

返回一组表达式中的最大值,即比较字符的编码大小.

SQL> select greatest('AA','AB','AC') from dual;

GR
--
AC
SQL> select greatest('
','','') from dual;

GR
--

GROUPING

HEXTORAW

将一个十六进制构成的字符串转换为二进制

INITCAP

返回字符串并将字符串的第一个字母变为大写;

SQL> select initcap('smith') upp from dual;

UPP
-----
Smith

INSTR(C1,C2,I,J)

在一个字符串中搜索指定的字符,返回发现指定的字符的位置;

C1    被搜索的字符串
C2    
希望搜索的字符串
I     
搜索的开始位置,默认为1
J     
出现的位置,默认为1

SQL> select instr('oracle traning','ra',1,2) instring from dual;

 INSTRING
---------
        9

INSTRB

INSTR()函数一样,只是他返回的是字节,对于单字节INSTRB()等于INSTR()

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/17032106/viewspace-697666/,如需转载,请注明出处,否则将追究法律责任。

上一篇: Oracle 共享池操作
请登录后发表评论 登录
全部评论

注册时间:2010-12-27

  • 博文量
    39
  • 访问量
    86794