含雪幸福

导航

 

1、获取当前时间一周前的日期

select  sysdate - interval '7' day  from dual 

类似的

 1 --当前时间减去7分钟的时间
 2 select  sysdate,sysdate - interval '7' MINUTE  from dual
 3 --当前时间减去7小时的时间
 4 select  sysdate - interval '7' hour  from dual
 5 --当前时间减去7天的时间
 6 select  sysdate - interval '7' day  from dual
 7 --当前时间减去7月的时间
 8 select  sysdate,sysdate - interval '7' month from dual
 9 --当前时间减去7年的时间
10 select  sysdate,sysdate - interval '7' year   from dual
11 --时间间隔乘以一个数字
12 select  sysdate,sysdate - 8 *interval '2' hour   from dual

 

2、获取当前时间一个月前的日期

select add_months(sysdate,-1) from dual 

3、获取当前时间一年前的日期

select add_months(sysdate,-12) from dual 

4.获取本周

select * fromwhere time > sysdate - (to_char(sysdate-1,'D'));

5.获取本月

select * fromwhere time>=TRUNC(SYSDATE, 'MM') and time<=last_day(SYSDATE);

6. 获取当年时间的数据

1 Select * FromWhere To_Char(Time,'yyyy')=To_Char(Sysdate,'yyyy');
2 或者
3 Select * FromWhere Time >= trunc(Sysdate,'yyyy');

 

例子:

 1 --当前时间的最近一个月
 2 Select To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where Create_Date >= Add_Months(Sysdate,-1);
 3 --当前时间的一个月前
 4 Select To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where Create_Date < Add_Months(Sysdate,-1);
 5 --获取当前时间一年前的日期
 6 Select To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where Create_Date < Add_Months(Sysdate,-12);
 7 --获取当前时间近一周
 8 Select To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where Create_Date >Sysdate - Interval '7' Day;
 9 --本周
10 Select To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where Create_Date >Sysdate - (To_Char(Sysdate-1,'D'))  Order By Create_Date Asc;
11 --本月
12 Select To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where create_date >=TRUNC(SYSDATE, 'MM') and Create_Date <=last_day(SYSDATE)  Order By Create_Date Asc;
13 --当年
14 Select  To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where To_Char(Create_Date,'yyyy') = To_Char(Sysdate,'yyyy');
15 --当年
16 Select  To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where Create_Date >= trunc(Sysdate,'yyyy');

 

说明:

1. 当前时间减去7月的时间 sysdate - interval '7' month  的实现方式 和 当前时间的7月 Add_Months(Sysdate,-7) 实现结果是一样的
1 --当前时间的近7月的时间数据
2 Select To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where Create_Date >(Sysdate - Interval '7' Month) order by Create_Date asc ;
3 --当前时间的近7月的时间数据
4 Select To_Char(Create_Date,'yyyy-MM-dd HH:mm:ss') From Order Where Create_Date >= Add_Months(Sysdate,-7) order by Create_Date asc;

 

 2. 外国都是以周日作为每周的第一天,所以在调用Sysdate - To_Char(Sysdate-1,'D') 计算本周时,要大于这个时间,不能是包括

select sysdate 当前时间 , sysdate - interval '7' day 当前时间近一周 ,Sysdate - To_Char(Sysdate-1,'D') 本周 from dual;

  运行结果为:

 

posted on 2018-09-06 16:54  含雪幸福  阅读(2869)  评论(0编辑  收藏  举报
 
/*生成博客目录的CSS*/ #uprightsideBar{ font-size:12px; font-family:Arial, Helvetica, sans-serif; text-align:left; position:fixed;/*将div的位置固定到距离top:50px,right:0px的位置,这样div就会处在最右边的位置,距离顶部50px*/ top:50px; right:0px; width: auto; height: auto; } #sideBarTab{ float:left; width:30px; border:1px solid #e5e5e5; border-right:none; text-align:center; background:#ffffff; } #sideBarContents{ float:left; overflow:auto; overflow-x:hidden;!important; width:200px; min-height:108px; max-height:460px; border:1px solid #e5e5e5; border-right:none; background:#ffffff; } #sideBarContents dl{ margin:0; padding:0; } #sideBarContents dt{ margin-top:5px; margin-left:5px; } #sideBarContents dd, dt { cursor: pointer; } #sideBarContents dd:hover, dt:hover { color:#A7995A; } #sideBarContents dd{ margin-left:20px; }