oracle中的add_months()函数总结
2015-07-31 09:54
459 查看
oracle中的常用的函数的总结:
1、add_months(x,y)或者add_months(times,months)函数:
(1)用途:这个函数用于计算在时间x之上机上Y个月后的时间值,要是Y的值为负数的话就是在
这个时间点之间的时间值(这个时间-Y个月)。
(2)用法实例:
A:--从emp表查询列出来公司就职时间超过24年的员工名单
select ename, hiredate
from emp
where hiredate <= add_months(sysdate, -288);--负数代表系统时间(sysdate)之前的24年的时间-288 = -24*12
B:--查询出在员工'SCOTT'入职一年后入职的员工的信息
select ename, a.hiredate, sal
from emp a, (select hiredate from emp where ename = 'SCOTT') b
where a.hiredate > = add_months(b.hiredate, 12);
解析:上面的查询思路如下
a:在from语句的后面将员工'SCOTT'的入职时间查出放在一个表里,表的别名为b
b:将上面的b表再次作为查询表
c:然后利用add_months(x,y)函数在b表的hiredate之后的12个月作为查询条件
C:--查询半年前的时间
select add_months(sysdate,6) from dual;
解析:dual是oracle提供的最小功能表,它只有一行一列
1、add_months(x,y)或者add_months(times,months)函数:
(1)用途:这个函数用于计算在时间x之上机上Y个月后的时间值,要是Y的值为负数的话就是在
这个时间点之间的时间值(这个时间-Y个月)。
(2)用法实例:
A:--从emp表查询列出来公司就职时间超过24年的员工名单
select ename, hiredate
from emp
where hiredate <= add_months(sysdate, -288);--负数代表系统时间(sysdate)之前的24年的时间-288 = -24*12
B:--查询出在员工'SCOTT'入职一年后入职的员工的信息
select ename, a.hiredate, sal
from emp a, (select hiredate from emp where ename = 'SCOTT') b
where a.hiredate > = add_months(b.hiredate, 12);
解析:上面的查询思路如下
a:在from语句的后面将员工'SCOTT'的入职时间查出放在一个表里,表的别名为b
b:将上面的b表再次作为查询表
c:然后利用add_months(x,y)函数在b表的hiredate之后的12个月作为查询条件
C:--查询半年前的时间
select add_months(sysdate,6) from dual;
解析:dual是oracle提供的最小功能表,它只有一行一列
相关文章推荐
- oracle中的add_months()函数总结
- oracle数据类型和对应的java类型
- Oracle创建directory
- ORA-12505, TNS:listener does not currently know of SID given 错误
- Oracle--10(ROW_NUMBER() OVER)
- 利用Oracle的row_number() over函数消除重复的记录
- Oracle索引
- SQL Server 2008创建oracle链接服务器(心得)
- 在64位SQL Server中创建Oracle的链接服务器
- Oracle数据访问组件ODAC的安装方法
- Oracle中decode函数与case when的使用
- Oracle计算两个时间戳相差秒数,精确到毫秒
- ORACLE函数大全
- oracle数据库sql修改update,修改多个值,多条数据
- 实战 oracle 函数小结
- Oracle 学习之RMAN(七)参数配置
- Oracle 中merge into不能更新on中的字段
- Oracle 10G创建表空间
- Oracle oerr使用
- Oracle 学习之RMAN(六)备份集备份片