oracle学习笔记二(基本的日期函数)

日期函数:
sysdate:返回系统时间
add_months(d,n);

查找入职8个月多的员工:
select * from emp where sysdate>add_months(hiredate,8);
add_months(hiredate,8):表示从雇用时间开始再加上8个月
add_months(hiredate,8*12):表示加上8年

查询员工加入到公司的天数:
select floor(sysdate-hiredate) as "入职天数" from emp;
trunc()截掉
floor()向下取整 日期相减 得到 天数
找出各月倒数第3天受雇的所有员工:
select hiredate,ename from emp where last_date(hiredate)-2=hiredate;

last_day(d):返回指定日期所在月份的最后一天


转换函数
比如:
create table t1(id int);
insert into t1 values('10');
这样oracle会自动的将'10'转换成10;

create table t2(id varchar2(10));
insert into t2 values(1);
oracle会自动转换

to_char();

日期显示 时分秒

select ename,to_char(hiredate,'yyyy-mm-dd hh24:mi:ss');

添加时,如果没有插入时分秒,那么默认都为0
insert into emp values(222,'test','manager,88,sysdate);
或者
to_date('1998-09-23 22:30:00','yyyy-mm-dd hh24:mi:ss');

插入薪水:

select ename,to_char(sal,'L99999,99') from emp
显示出来会是RMB2000
L:代表显示本地货币符合,中文:以RMB来显示
99999.99:代表是5位整数后代两位小数(这是因为sal这个字段是 sal number(7,2))

9:显示数字,并忽略前面0,
0:显示数字,如位数不足,则用0补齐
. :在指定位置显示小数点
,:在指定位置显示逗号 L99,999,99 每三位显示,
$:在数字前加美元
C:在数字前加国际货币符合
G:在指定位置显示组分隔符
D:在指定位置显示小数点符合

to_char
显示1980年入职的所有员工;
select * from emp where to_char(hiredate,'yyyy')=1980;
显示所有12份入职的员工:

select * from emp where to_char(hiredate,'mm')=12;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值