Oracle常见函数(一)

2017-11-02  本文已影响0人  孤意的学习笔记

1、Oracle函数

1.1、常用的单行函数

运算符 说明
mod(y,x) 返回y除以x的余数,如果x为0则返回y
round(x,[,y]) 四舍五入,y省略,四舍五入到整数位;y为负,责到小数点前y位,y为正,则到小数点后y为
trunc(x,[,y]) 截取数字,如y省略,则截去x的小数部分;y为负,截取小数点前y位;为正,截取小数点后y为

1.2、日期

Oracle中,时间和日期是一起存储的,其数据类型是date或者timestamp。

Oracle中,以7位数字格式来存放日期时间,其整数部分从公元前4712年1月1日开始。
默认的日期格式:dd-MM-yyyy(01-5月-2013)

1.2.1、日期函数

Oracle提供了4种的日期、字转换函数。常用的为以下两种:

select ename, to_char(hiredate,'YYYY-MM-DD') from scott.emp;
ENAME TO_CHAR(HIREDATE.'YYYY-MM-DD')
SMITH 1980-11-01
ALLEN 1981-02-20
... ...
select to_date('2006-05-01','YYYY-MM-DD') from dual;
TO_DATE('2006-05-01'.'YYYY-MM-DD')
2006/5/1

1.2.2、日期函数

select sysdate, add_months(sysdate,3), add_months(sysdate,-2) from dual;
SYSDATE ADD_MONTHS(SYSDATE,3) ADD_MONTHS(SYSDATE,-2)
2017/11/2 星期四 9:35:24 2018/2/2 星期五 9:35:24 2017/9/2 星期六 9:35:24
select sysdate, last_day(sysdate), last_day(sysdate)+1 from dual;
SYSDATE LAST_DAY(SYSDATE) LAST_DAY(SYSDATE,)+1
2017/11/2 星期四 9:41:16 2017/11/30 星期四 9:41:16 2017/12/1 星期五 9:41:16
select 
months_between('17-9月-2013', '17-9月-2013') as 第一个结果, 
months_between('17-10月-2013', '17-8月-2013') as 第二个结果, 
months_between('17-8月-2013', '17-10月-2013') as 第三个结果
from dual;
第一个结果 第二个结果 第三个结果
0 2 -2
select
next_day(sysdate, '星期一') as 第一个结果,
next_day('18-9月-2013', '星期六') as 第二个结果
from dual;
第一个结果 第二个结果
2017/11/6 2013/9/21

1.2.2、字符函数函数

select chr(65), chr(97) from dual;
CHR(65) CHR(97)
A a
select concat('hello', ' world') from dual;
CONCAT('HELLO', ' WORLD')
hello world
select initcap('HELLO, world') from dual;
INITCAP('HELLO, WORLD')
Hello, World
select length('HELLLO, world') from dual;
LENGTH('HELLO, WORLD')
13
select lower('HELLO, world') from dual;
LOWER('HELLO, WORLD')
hello, world
select upper('HELLO, world') from dual;
UPPER('HELLO, WORLD')
HELLO, WORLD
select ltrim('109224323','109') from dual;
LTRIM('109224323','109')
224323
select ltrim('1090009224323','109') from dual;
LTRIM('1090009224323','109')
224323
上一篇下一篇

猜你喜欢

热点阅读