下载此文档

临床医学检验论文关于医学检验论文医学检验论文检.doc


文档分类:医学/心理学 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
Oracle日期函数:过去、现在及日期的差
上几天把Oracle的数值函数整理完了,今天晚上把Oracle的日期函数整理一下。这些东西吧,不能做到全都记住的话,那也必须做到心中有数,知道有它的存在可以避免开发过程中绕弯子。从到到尾捋顺一遍还是有很多收获的。
一、日期算法
1、sysdate、current_date及systimestamp
Oracle使用计算机操作系统的当前日期和时间,是通过sysdate函数实现的,在任何可以使用Oracle函数的其它地方都可以使用sysdate函数,可以将它视为每个表的一个隐藏列或者伪列。
?
1
2
3
selectsysdatefromdual;

结果:2013/12/22 19:14:21
current_date 返回的是当前会话的时区的系统日期,我们平时用的都是东八区,如果将当前会话时间修改成东九区试试:
?
1
2
3
4
5
altersessionsettime_zone='+09:00';

selectcurrent_date,sysdate from dual

结果: 2013/12/24 20:27:33 2013/12/24 19:27:32
通过例子我们也看到它俩的区别了。
还有一个函数systimestapm,它返回的是本机的系统时间(包含微秒和时区),它跟会话的时区无关
?
1
2
3
select systimestamp from dual

结果: 24-12月-13 下午+08:00
2、两个日期的差
两个日期可以直接进行加减,返回的数值单位是天,也可以用一个日期加减某个数值代表N天后(前)
比如十天后发工资,那么十天后是那一天呢?
?
1
2
3
select sysdate+10 from dual

结果: 2014/1/1 19:38:19
再比如今天除夕是2014-01-30,那么距离过年还有哪个多少天呢
?
1
2
3
selectto_date('2014-01-30','yyyy-MM-dd') -sysdate fromdual

结果:
晕,还有一个多月才能过年呢啊
3、添加月份、减少月份
用的都是add_months
查询一下三个月后、三个月前分别是哪一天:
?
1
2
3
selectadd_months(sysdate,3),add_months(sysdate,-3) from dual

结果: 2014/3/22 19:47:18 2013/9/22 19:47:18
添加年份、减少年份就不用说了,直接在数值上乘以12就可以推算N年前、N年后是哪一天
4、greatest和least
这两个函数在介绍数值函数的时候提到过,在数值函数中分别代表取一组数值中的最大值和最小值。
这哥俩在日期函数中也有应用,greatest是从一组日期数据中取距离当前最近的日期,least是在一组日期中选择最早的日期。
?
1
2
3
4
5
6
7
select greatest(to_date('2013-11-11','

临床医学检验论文关于医学检验论文医学检验论文检 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人zxwziyou8
  • 文件大小785 KB
  • 时间2018-07-08