oracle+exetp函数,[oracle学习笔记]之二:oracle常用函数

oracle常用系统函数

====================================================

函数的作用:

方便数据的统计,处理查询结果。

函数的分类:

按定义分类:系统函数,自定义函数。

按数据类型:数值函数,字符函数,日期函数,转换函数。

数值函数

1、四舍五入函数:

ROUND(n[,m])

省略m:保留到0位;m>0:小数点后m位;m<0:小数点前m位。

例子:

select round(23.5,0),round(23.5,1),round(23.5,-1) from dual;

2、取整函数:

CEIL()进一;FLOOR()去尾。

例子:

select ceil(23.45),floor(23.4) from dual;

3、取绝对值函数:

ABS(n);

4、取模函数:

MOD(m,n) m,n参数任意一个为null,值为null;

5、指数函数:

POWER(m,n):m的n次幂

6、取平方根:

SQRT(n):n为16,值为4

7、三角函数:

SIN(n),ASIN(n),COS(n),ACOS(n),TAN(n),ATAN(n)

字符函数

1、大小写转换函数:

UPPER(char),LOWER(char),INITCAP(char)

例子:

select upper(‘adbe’),lower(‘NIKE’),initcap(‘addidas’) from dual;

2、获取子字符串函数:

SUBSTR(char[,m[,n]])

例子:

select substr(‘adidas’,2,3),substr(‘adidas’,2),substr(‘adidas’,-2,1) from dual;

3、获取字符串长度:

LENGTH(char) //包含空格在内

4、字符串连接函数:

CONCAT(char1,char2);和||操作符一样

例子:

select concat(‘adi’,’das’) from dual;

select ‘adi’||’das’ from dual;

5、去除字符函数:

TRIM(c1 from c2):从c2字符串中去掉c1字符

LTRIM(c1[,c2]):从c1字符串左边去掉c2字符,直到不是c2为止

RTRIM(c1[,c2]):从c1字符串右边去掉c2字符,直到不是c2为止

TRIM(c1):去掉c1字符串的首尾空格

例子:

select trim (‘a’ from ‘adidas’),ltrim(‘aaddcc’,’a’),rtrim(‘aaddcc’,’c’),trim(’ ppp ‘) from dual;

6、替换函数:

REPLACE(char,s_string[,r_string]):省略r_string则用空格替换。

例子:

select replace(‘adbce’,’ad’,’AB’) from dual;

日期函数

1、SYSDATE:系统时间

默认格式:DD-MON-RR

2、ADD_MONTHS(date,i):

返回在指定日期上添加的月份

3、NEXT_DAY(date,char):

如果char的值是‘星期一’,则返回date指定日期的下周一是哪天

4、LAST_DAY(date)

返回当月份的最后一天

5、MONTHS_BETWEEN(date1,date2)

计算两个日期的月份差

6、EXTRACT(date FROM datetime)

获取当前日期(date可以为year,month,day,hour,…)

例子:

select add_months(sysdate,3),add_months(sysdate,-3) from dual;

select next_day(sysdate,’星期一’) from dual;

select last_day(sysdate),months_between(‘22-4月-14’,’22-4月-15’),extract(day from sysdate) from dual;

转换函数

对不同的数据类型进行转换的函数。

1、日期转字符函数:

TO_CHAR(date[,fmt[,params]]):date,将要转换的日期;fmt,转换的格式;params:日期的语言。

例子:

select to_char(sysdate,’yyyy-mm-dd hh24:mi:ss’) from dual;

2、字符转日期函数:

TO_DATE(char[,fmt[,params]]):char,将要转换的字符;fmt,转换的格式;params:日期的语言。

例子:

select to_date(‘2015-09-24’,’yyyy-mm-dd’) from dual;

注意:显示的时间格式仍然为系统格式,于fmt好像没什么用

3、数字转换成字符函数:

TO_CHAR(number[,fmt]):

其中,9:显示数据并忽略前面的0;

0:显示数字,位数不足用0补齐

.或D:显示小数点

,或G;显示千位符

$:美元符号

S:加正负号(前后都可以)

例子:

select to_char(12345.789,’S99,999.999’) from dual;

4、字符转换为数字的函数:

TO_NUMBER(char[,fmt]) :fmt转换的格式,可以省略。

例子:

select to_number(‘1,000′,′9999’) from dual;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值