`
picluo
  • 浏览: 339706 次
  • 性别: Icon_minigender_1
  • 来自: 大力亚
社区版块
存档分类
最新评论

oracle函数集中介绍

阅读更多

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;

--从o开始搜索第二次出现‘ra’的位置

 

 INSTRING

---------

        9

 

6.LENGTH

返回字符串的长度;

SQL> select name,length(name),addr,length(addr),sal,length(to_char(sal)) from gao.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('H
----------
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  剪掉后面的字符
如果不指定,默认为空格符

SQL> select trim('s'from'strsings') from dual;

TRIM('S'FROM'STRSINGS')
-----------------------
trsing

 

 

 

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


26.MOD(n1,n2)
返回一个n1除以n2的余数
SQL> select mod(10,3),mod(3,3),mod(2,3) from dual;

MOD(10,3)  MOD(3,3)  MOD(2,3)
--------- --------- ---------
        1         0         2


27.POWER
返回n1的n2次方根
SQL> select power(2,10),power(3,3) from dual;

 

 

POWER(2,10) POWER(3,3)
----------- ----------
       1024         27

 

 


28.ROUND和TRUNC
按照指定的精度进行舍入
SQL> select round(55.5),round(-55.4),trunc(55.5),trunc(-55.5) from dual;

 

ROUND(55.5) ROUND(-55.4) TRUNC(55.5) TRUNC(-55.5)
----------- ------------ ----------- ------------
         56          -55          55          -55


29.SIGN
取数字n的符号,大于0返回1,小于0返回-1,等于0返回0
SQL> select sign(123),sign(-100),sign(0) from dual;

SIGN(123) SIGN(-100)   SIGN(0)
--------- ---------- ---------
        1         -1         0


30.SIN
返回一个数字的正弦值
SQL> select sin(1.57079) from dual;

 

 

SIN(1.57079)
------------
           1


31.SIGH
返回双曲正弦的值
SQL> select sin(20),sinh(20) from dual;

  SIN(20)  SINH(20)
--------- ---------
.91294525 242582598

 


32.SQRT
返回数字n的根
SQL> select sqrt(64),sqrt(10) from dual;

 

 SQRT(64)  SQRT(10)
--------- ---------
        8 3.1622777

 

 

33.TAN
返回数字的正切值
SQL> select tan(20),tan(10) from dual;

 

  TAN(20)   TAN(10)
--------- ---------
2.2371609 .64836083

 

 


34.TANH
返回数字n的双曲正切值
SQL> select tanh(20),tan(20) from dual;

 TANH(20)   TAN(20)
--------- ---------
        1 2.2371609

 

 

 

 

35.TRUNC
按照指定的精度截取一个数
SQL> select trunc(124.1666,-2) trunc1,trunc(124.16666,2) from dual;

 

 

   TRUNC1 TRUNC(124.16666,2)
--------- ------------------
      100             124.16

 

 

 

 

36.ADD_MONTHS
增加或减去月份
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

 


37.LAST_DAY
返回日期的最后一天
SQL> select to_char(sysdate,'yyyy.mm.dd'),to_char((sysdate)+1,'yyyy.mm.dd') from dual;

TO_CHAR(SY TO_CHAR((S
---------- ----------
2004.05.09 2004.05.10
SQL> select last_day(sysdate) from dual;

LAST_DAY(S
----------
31-5月 -04


38.MONTHS_BETWEEN(date2,date1)
给出date2-date1的月份
SQL> select months_between('19-12月-1999','19-3月-1999') mon_between from dual;

 

MON_BETWEEN
-----------
          9
SQL>selectmonths_between(to_date('2000.05.20','yyyy.mm.dd'),to_date('2005.05.20','yyyy.mm.dd')) mon_betw from dual;

 MON_BETW
---------
      -60

 

39.NEW_TIME(date,'this','that')
给出在this时区=other时区的日期和时间
SQL> select to_char(sysdate,'yyyy.mm.dd hh24:mi:ss') bj_time,to_char(new_time
  2  (sysdate,'PDT','GMT'),'yyyy.mm.dd hh24:mi:ss') los_angles from dual;

 

 

BJ_TIME             LOS_ANGLES
------------------- -------------------
2004.05.09 11:05:32 2004.05.09 18:05:32

 

 


40.NEXT_DAY(date,'day')
给出日期date和星期x之后计算下一个星期的日期
SQL> select next_day('18-5月-2001','星期五') next_day from dual;

 

 

NEXT_DAY
----------
25-5月 -01

 

 

 

 

41.SYSDATE
用来得到系统的当前日期
SQL> select to_char(sysdate,'dd-mm-yyyy day') from dual;

 

 

TO_CHAR(SYSDATE,'
-----------------
09-05-2004 星期日
trunc(date,fmt)按照给出的要求将日期截断,如果fmt='mi'表示保留分,截断秒
SQL> select to_char(trunc(sysdate,'hh'),'yyyy.mm.dd hh24:mi:ss') hh,
  2  to_char(trunc(sysdate,'mi'),'yyyy.mm.dd hh24:mi:ss') hhmm from dual;

 

 

HH                  HHMM
------------------- -------------------
2004.05.09 11:00:00 2004.05.09 11:17:00

 

 

 

 

42.CHARTOROWID
将字符数据类型转换为ROWID类型
SQL> select rowid,rowidtochar(rowid),ename from scott.emp;

ROWID              ROWIDTOCHAR(ROWID) ENAME
------------------ ------------------ ----------
AAAAfKAACAAAAEqAAA AAAAfKAACAAAAEqAAA SMITH
AAAAfKAACAAAAEqAAB AAAAfKAACAAAAEqAAB ALLEN
AAAAfKAACAAAAEqAAC AAAAfKAACAAAAEqAAC WARD
AAAAfKAACAAAAEqAAD AAAAfKAACAAAAEqAAD JONES

 


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

conver
------
strutz

分享到:
评论

相关推荐

    oracle函数大全 oracle函数大全

    以下是关于Oracle函数的一些详细说明: 1. ASCII函数:ASCII函数返回与输入字符相对应的ASCII码,即十进制数字。例如,ASCII('A')返回65,ASCII('a')返回97。 2. CHR函数:CHR函数根据提供的整数返回对应的字符。...

    ORACLE函数及其用法

    ### ORACLE函数及其用法详解 #### 概述 Oracle是一种广泛使用的数据库管理系统,它提供了丰富的内置函数,这些函数能够帮助开发者和数据库管理员更高效地处理数据。本文将详细介绍Oracle中的一些常用函数及其应用...

    oracle函数触发器游标等几个小例子

    1. **Oracle函数**:函数是可重用的代码块,返回一个值。在`v_ceshiFunction.sql`和`v_ceshiFunction(表名当参数).sql`中,可能包含了自定义函数的创建和使用示例。函数可以接受参数,执行特定操作,然后返回结果。...

    Oracle函数大全.pdf

    在Oracle数据库中,函数是一类预定义的子程序,它可以对输入参数执行运算,并返回一个结果值。Oracle提供了一系列的函数,用于处理不同类型的数据,如字符串、数字、日期和时间等。下面按照文档所提供的内容,详细...

    ORACLE分析函数教程

    通过本文的介绍,我们可以了解到Oracle分析函数的强大之处,尤其是在处理复杂的分析需求时。这些函数不仅简化了SQL查询,而且提高了数据处理的效率。理解并熟练掌握这些函数对于Oracle开发者来说至关重要。在实际...

    VB 调用 Oracle 函数返回数据集的例子

    在VB(Visual Basic)中调用Oracle函数并获取返回的数据集是常见的数据库操作。这个例子展示了如何使用VB来调用Oracle存储过程,该过程返回一个游标类型(REF CURSOR),进而填充ADODB.Recordset对象。 首先,让我们...

    oracle离线函数大全.rar

    "Oracle离线函数大全.rar" 提供了Oracle数据库中所有函数的详细信息,包括分析函数、聚合函数、转换函数、日期型函数、字符型函数、数值型函数和其他各种实用函数。这份资源对于Oracle数据库管理员、开发人员以及...

    oracle常用函数总结

    Oracle数据库是一个广泛使用的关系型数据库管理系统,它提供了丰富的内置函数来帮助用户处理和操作数据。以下是对标题和描述中提到的Oracle常用函数的详细总结: 1. ASCII 函数:这个函数返回一个字符对应的ASCII码...

    oracle系统内置函数大全

    以上是对Oracle系统内置函数大全的知识点介绍,内容涵盖了字符处理、数字计算、日期处理、数据类型转换、分组聚合等多个方面的函数。Oracle数据库管理员和开发人员经常需要用到这些函数以实现各种数据处理需求。

    oracle 10G函数大全

    这份“Oracle 10G函数大全”CHM文件很可能是按照这些分类详细介绍了每个函数的用法、示例和注意事项,是数据库管理员和开发者的重要参考资料。通过深入学习和熟练应用这些函数,可以提升对Oracle数据库的管理和开发...

    oracle函数大全.doc

    以上只是一部分Oracle函数的介绍,实际上Oracle数据库还提供了许多其他功能强大的函数,如日期和时间处理函数、数学函数、转换函数等。熟练掌握这些函数,能帮助数据库管理员和开发人员更好地管理和操作数据,提高...

    Oracle_分析函数

    Oracle分析函数是Oracle数据库提供的一个高级SQL特性,它允许在查询结果集中进行复杂的数据分析。分析函数通过使用OVER子句,可以对数据进行分区、排序以及定义窗口大小等功能。它们在数据仓库、报告和在线事务处理...

    ORACLE内置函数大全

    Oracle数据库系统提供了丰富的内置函数,这些函数极大地增强了SQL查询的能力,使得数据处理更加灵活和高效。以下是关于Oracle内置函数的一些详细说明: 1. ASCII函数:ASCII函数返回与给定字符对应的十进制数字。...

    Oracle分析函数

    本文将详细介绍Oracle分析函数的主要类型及其用途。 #### 二、聚合分析函数 ##### 1. SUM - **定义**:计算指定表达式的累积和。 - **用途**:常用于汇总某个数值字段的所有值。 ##### 2. MIN - **定义**:找出一...

    Oracle特别实用的函数

    Oracle数据库系统提供了丰富的内置函数,这些函数极大地增强了SQL...了解并熟练使用这些Oracle函数,可以大大提高SQL查询的效率和实用性,使数据库操作更加简便和灵活。在日常的数据处理工作中,它们是不可多得的工具。

    oracle系统函数大全

    Oracle数据库系统包含丰富的内置函数,这些函数用于处理各种数据类型,包括字符串、数值以及日期等。以下是关于Oracle系统函数的一些详细说明,以标题和描述中提到的几个为例: 1. ASCII 函数: ASCII 函数返回一...

    ORACLE分析函数

    Oracle分析函数允许用户在查询结果集上执行复杂的计算,这些计算基于数据集中的行或组。常见的分析函数包括`SUM()`, `COUNT()`, `AVG()`, `MIN()`, `MAX()`等,它们通常与`OVER`子句一起使用来定义计算范围。 ### ...

    Oracle 函数的运用

    上述代码展示了如何通过 C# 调用 Oracle 过程 `p_wt` 来获取结果集,并将其填充到数据集中,最终展示在 DataGrid 控件上。 #### 总结 通过上述步骤,我们不仅了解了如何在 Oracle 数据库中创建和使用包及其函数,...

    Oracle 分析函数.doc

    Oracle 分析函数是数据库查询中的强大工具,它们允许在单个SQL语句中对结果集进行复杂的计算和分组操作,极大地简化了数据分析的过程。在Oracle 8i版本之后引入,分析函数为处理大量数据提供了高效的方法,避免了...

Global site tag (gtag.js) - Google Analytics