DBMNG数据库管理与应用

才能是来自独创性。独创性是思维、观察、理解和判断的一种独特的方式。
当前位置:首页 > 数据库基础 > SQL语言

PL/SQL中的函数

2.3.4  PL/SQL中的函数

SQL*PLUS提供用于执行特定操作的特定函数。函数可以接受一个或多个参数,并返回一个值。Oracle大体上将函数分为单行函数和分组函数,下面将详细讲解。

1. 日期函数

SQL*PLUS日期函数产生具有date数据类型的输出结果,但返回数字的months_between日期函数除外。
SQL*PLUS日期函数包括Add_months(d,n)、Last_day(d)、Months_between(d1,d2)、Round(d,[fmt])、Next_day(d,day)、Truncate(d,[fnt])、Greatest和New_time(date,'this','other')等,具体信息如表2-13所示。

表2-13  SQL*PLUS日期函数

   

    

Add_months(d,n)

Add_months日期函数在对指定的日期增加指定的月数后返回一个日期

Last_day(d)

返回月末最后一天相应的日期

Months_between(d1,d2)

返回两个日期之间的月份

Round(d,[fmt])

此函数返回日期,并且此日期舍入到格式模型所指定的单位

Next_day(d,day)

返回dday指定的日期

Truncate(d,[fnt])

此函数返回日期,其时间部分截断为格式模型所指定的单位

Greatest

此函返回参数列表中的最晚日期

New_time(date,'this','other')

此函数显示日期列或日期常数在其他时区的时间和日期


注意:
上述函数都属于单行函数,单行函数返回一个值。


2. 字符函数

Oracle支持的字符函数如表2-14所示。
表2-14  Oracle中的字符函数

    

    

    

Lower(char)

SELECT lower('FUN') from dual

fun

Upper(char)

SELECT upper('fun') from dual

FUN

Ltrim(char,set)

SELECT ltrim('abcdefg','abc') from dual

Defg

Rtrim(char,set)

SELECTrtrim('abcdefg','efg') from dual

Abcd

Tanslate(char,from,to)

SELECT translate('how do you do','h','s') from dual

Sow do you do

Instr(char,m,n)

SELECT instr('worldwide','d') from dual

5

Substr(char,m,n)

SELECT substr('abcdefg',4,2) from dual

De

Concat(expr1,expr2)

SELECT concat('Hello','world')from dual

Hello world


注意:
Trim函数合并了Ltrim函数和Rtrim函数的功能。

3. 数字函数

这里只选择几个数字函数做出解释。具体内容如表2-15所示。
表2-15  数 字 函 数

    

    

    

Abs

返回绝对值

SELECT ABS(-10) from dual=10

Power(m,n)

返回mn次方

SELECT power(4,2) from dual=16

Mod(m.n)

返回m除以n后的余数

SELECT mod(10,3) from dual=1

Sign

返回值的符号,无论值的大小

SELECT sign(-32) from dual=1


4. 分组函数

Oracle中的分组函数有AVG、MIN、MAX、SUM、COUNT等,用法与SQL Server中相同,这里就不再赘述。

本站文章内容,部分来自于互联网,若侵犯了您的权益,请致邮件chuanghui423#sohu.com(请将#换为@)联系,我们会尽快核实后删除。
Copyright © 2006-2023 DBMNG.COM All Rights Reserved. Powered by DEVSOARTECH            豫ICP备11002312号-2

豫公网安备 41010502002439号