sysdate()简单用法
环境:
create table rq (xm varchar2(10),age number,zw varchar(10),rzrq date);
insert into rq values ('小崔',23,'运维工程师',(to_date('2017-07-02','yyyy-mm-dd')));
insert into rq values ('小赵',29,'java工程师',(to_date('2013-04-12','yyyy-mm-dd')));
insert into rq values ('小白',24,'网络工程师',(to_date('2016-10-02','yyyy-mm-dd')));
insert into rq values ('小虎',43,'项目管理师',(to_date('2003-09-15','yyyy-mm-dd')));
insert into rq values ('小叶',2,'技术工程师',(to_date('2009-07-02','yyyy-mm-dd')));
select * from rq

日期+数字=日期,表示若干天之后的日期。
select a.*,rzrq +10 from rq a

加法
select a.*,add_months(rzrq,12) from rq a; --------加1年
select a.*,add_months(rzrq,1) from rq a; --加1月
select a.*,to_char(rzrq+7,'yyyy-mm-dd HH24:MI:SS') from rq a;---加1星期
select a.*,to_char(rzrq+1,'yyyy-mm-dd HH24:MI:SS') from rq a; --加1天
select a.*,to_char(rzrq+1/24,'yyyy-mm-dd HH24:MI:SS') from rq a; --加1小时
select a.*,to_char(rzrq+1/24/60,'yyyy-mm-dd HH24:MI:SS') from rq a; --加1分钟
select a.*,to_char(rzrq+1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from rq a; --加1秒
日期-数字=日期,表示若干天之前的日期。
select a.*,rzrq -10 from rq a
日期-日期=数字,表示两个日期间的天数,但是肯定是大日期-小日期。
select a.*,trunc(sysdate - rzrq) from rq a
加法
select a.*,add_months(rzrq,-12) from rq a; --------加1年
select a.*,add_months(rzrq,-1) from rq a; --加1月
select a.*,to_char(rzrq-7,'yyyy-mm-dd HH24:MI:SS') from rq a;---加1星期
select a.*,to_char(rzrq-1,'yyyy-mm-dd HH24:MI:SS') from rq a; --加1天
select a.*,to_char(rzrq-1/24,'yyyy-mm-dd HH24:MI:SS') from rq a; --加1小时
select a.*,to_char(rzrq-1/24/60,'yyyy-mm-dd HH24:MI:SS') from rq a; --加1分钟
select a.*,to_char(rzrq-1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from rq a; --加1秒
求出每个员工到今天为止的雇佣月份
select a.*,trunc(months_between(sysdate,rzrq)) from rq a

查询出5年前受雇佣的员工信息:
select * from rq where trunc(months_between(sysdate,rzrq))/5 >12

注意:在开发中,如果是日期函数,建议用此语句,可以避免闰年的问题。
获取当前日期及本月第几周:
select '当前系统日期:'||to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),'本月第'||to_char(sysdate,'w')||'周' from rq

获取当前日期是一个星期中的第几天:

注意:星期日是第一天
日期是星期几中文显示::
select '当前系统日期:'||to_char(sysdate),'本周'||to_char(sysdate,'day') from rq

解释:
yyyy 年
q 季度
mm 月
dd 日
ddd 年中的第几天
WW 年中的第几个星期
W 该月中第几个星期
D 周中的星期几
hh 小时(12)
hh24 小时(24)
Mi 分
ss 秒
查看当前系统日期:
select a.*,sysdate from rq a
获取当天凌晨0点0分0秒的日期
select trunc(sysdate) from rq;
获取这天的最后一秒
select trunc(sysdate) + 0.99999 from rq;
获取小时的具体数值
select trunc(sysdate) + 1/24 from rq;
select trunc(sysdate) + 7/24 from rq;
获取明天凌晨0点0分0秒的日期
select trunc(sysdate+1) from rq;
select trunc(sysdate)+1 from rq;
获取本月一日的日期
select trunc(sysdate,'mm') from rq;
获取下月一日的日期
select trunc(add_months(sysdate,1),'mm') from rq;
返回当前月的最后一天
select last_day(sysdate) from rq;
select last_day(trunc(sysdate)) from rql;
select trunc(last_day(sysdate)) from rq;
select trunc(add_months(sysdate,1),'mm') - 1 from rq;
获取一年的每一天
select trunc(sysdate,'yyyy')+ rn -1 date0 from (select rownum rn from all_objects where rownum<366);
获取今天是今年的第N天
select to_char(sysdate,'ddd') from dual;
如何在给现有的日期加上2年
select add_months(sysdate,24) from dual;
判断某一日子所在年分是否为润年
select decode(to_char(last_day(trunc(sysdate,'y')+31),'dd'),'29','闰年','平年') from dual;
判断两年后是否为润年
select decode(to_char(last_day(trunc(add_months(sysdate,24),'y')+31),'dd'),'29','闰年','平年') from dual;
sysdate()简单用法的更多相关文章
- CATransition(os开发之画面切换) 的简单用法
CATransition 的简单用法 //引进CATransition 时要添加包“QuartzCore.framework”,然后引进“#import <QuartzCore/QuartzCo ...
- jquery.validate.js 表单验证简单用法
引入jquery.validate.js插件以及Jquery,在最后加上这个插件的方法名来引用.$('form').validate(); <!DOCTYPE html PUBLIC " ...
- NSCharacterSet 简单用法
NSCharacterSet 简单用法 NSCharacterSet其实是许多字符或者数字或者符号的组合,在网络处理的时候会用到 NSMutableCharacterSet *base = [NSMu ...
- [转]Valgrind简单用法
[转]Valgrind简单用法 http://www.cnblogs.com/sunyubo/archive/2010/05/05/2282170.html Valgrind的主要作者Julian S ...
- Oracle的substr函数简单用法
substr(字符串,截取开始位置,截取长度) //返回截取的字 substr('Hello World',0,1) //返回结果为 'H' *从字符串第一个字符开始截取长度为1的字符串 subst ...
- Ext.Net学习笔记19:Ext.Net FormPanel 简单用法
Ext.Net学习笔记19:Ext.Net FormPanel 简单用法 FormPanel是一个常用的控件,Ext.Net中的FormPanel控件同样具有非常丰富的功能,在接下来的笔记中我们将一起 ...
- TransactionScope简单用法
记录TransactionScope简单用法,示例如下: void Test() { using (TransactionScope scope = new TransactionScope()) { ...
- WPF之Treeview控件简单用法
TreeView:表示显示在树结构中分层数据具有项目可展开和折叠的控件 TreeView 的内容是可以包含丰富内容的 TreeViewItem 控件,如 Button 和 Image 控件.TreeV ...
- listActivity和ExpandableListActivity的简单用法
http://www.cnblogs.com/limingblogs/archive/2011/10/09/2204866.html 今天自己简单的总结了listActivity和Expandable ...
随机推荐
- WPF中路由事件的传播
路由事件(RoutedEvent)是WPF中新增的事件,使用起来与传统的事件差别不大, 但传播方式是完全不同的. 路由事件的传播方式 通过RoutingStrategy来定义传播的方式 public ...
- MongoDB学习3 $操作符表达式大全及实例
from : http://blog.csdn.net/qq_16313365/article/details/58599253 1.查询和投影 1.1 比较操作符 $eq 语法:{ <fi ...
- SQL Server 2008 安装重启电脑失败
a .重启机器,再进行安装,如果发现还有该错误,请按下面步骤b.在开始->运行中输入regeditc.到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\C ...
- Java中异常发生时代码执行流程
异常与错误: 异常: 在Java中程序的错误主要是语法错误和语义错误,一个程序在编译和运行时出现的错误我们统一称之为异常,它是VM(虚拟机)通知你的一种方式,通过这种方式,VM让你知道,你(开发人员) ...
- 看 Netty 在 Dubbo 中如何应用
目录: dubbo 的 Consumer 消费者如何使用 Netty dubbo 的 Provider 提供者如何使用 Netty 总结 前言 众所周知,国内知名框架 Dubbo 底层使用的是 Net ...
- 在Android开发中替换资源图片不起作用的解决方法
现象 在android开发中,经常会需要替换res\drawable中的图片,打开res\layout下的文件预览布局页面发现图片已经被替换,但在模拟器或者真实机器上运行时发现该图片并没有被替换,还是 ...
- 【RabbitMQ】1、RabbitMQ的几种典型使用场景
RabbitMQ主页:https://www.rabbitmq.com/ AMQP AMQP协议是一个高级抽象层消息通信协议,RabbitMQ是AMQP协议的实现.它主要包括以下组件: 1.Serve ...
- Boring Sum(hdu4961)hash
Boring Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total S ...
- 【C#数据结构系列】树和二叉树
线性结构中的数据元素是一对一的关系,树形结构是一对多的非线性结构,非常类似于自然界中的树,数据元素之间既有分支关系,又有层次关系.树形结构在现实世界中广泛存在,如家族的家谱.一个单位的行政机构组织等都 ...
- 漫画 | Java多线程与并发(二)
1.什么是线程池? 为什么要使用它? 2.Java中invokeAndWait 和 invokeLater有什么区别? 3.多线程中的忙循环是什么? 4.Java内存模型是什么? 线程内的代码能够按先 ...