Oracle数据库查询上一小时、上一天、上一个月、上一年

Oracle数据库查询上一小时、上一天、上一个月、上一年、前几小时、前几天、前几月、前几年

上一小时、上一天、上一个月、上一年

上一小时

代码

select concat(to_char(sysdate,'yyyy-mm-dd ')||(to_char(sysdate,'hh24')-1),':00:00') start_time,
       concat(to_char(sysdate,'yyyy-mm-dd hh24'),':00:00') end_time 
from dual;

结果展示

image.png

上一天

代码

select to_char(sysdate-1,'yyyy-mm-dd ')||'00:00:00' start_time,
       to_char(sysdate-1,'yyyy-mm-dd ')||'23:59:59' end_time  
from dual;

结果展示

image.png

上一个月

代码

select concat(to_char(add_months(sysdate,-1), 'YYYY-MM-'),'01 00:00:00') start_time,
       concat(to_char(last_day(add_months(sysdate,-1)),'YYYY-MM-DD '),' 23:59:59') end_time 
from dual;

结果展示

image.png

上一个月

代码

select concat(to_char(add_months(sysdate,-1), 'YYYY-MM-'),'01 00:00:00') start_time,
       concat(to_char(last_day(add_months(sysdate,-1)),'YYYY-MM-DD '),' 23:59:59') end_time 
from dual;

结果展示

image.png

上一年

代码

select concat(extract(year from sysdate)-1,'-01-01 00:00:00') start_time,
       concat(extract(year from sysdate)-1,'-12-31 23:59:59') end_time 
from dual;

结果展示

image.png

前几小时、前几天、前几月、前几年

前几小时

代码

------查询前几小时
select concat(to_char(sysdate,'yyyy-mm-dd ')||(to_char(sysdate,'hh24')-几小时),':00:00') start_time,
       concat(to_char(sysdate,'yyyy-mm-dd ')||(to_char(sysdate,'hh24')-几小时),':00:00') end_time 
from dual;
--示例、查询前五小时到前三小时
select concat(to_char(sysdate,'yyyy-mm-dd ')||(to_char(sysdate,'hh24')-5),':00:00') start_time,
       concat(to_char(sysdate,'yyyy-mm-dd ')||(to_char(sysdate,'hh24')-3),':00:00') end_time 
from dual;

前几天

代码

------查询前几天
select to_char(sysdate-几天,'yyyy-mm-dd ')||'00:00:00' start_time,
       to_char(sysdate-几天,'yyyy-mm-dd ')||'23:59:59' end_time  
from dual;
------示例、查询前六天到前三天
select to_char(sysdate-6,'yyyy-mm-dd ')||'00:00:00' start_time,
       to_char(sysdate-3,'yyyy-mm-dd ')||'23:59:59' end_time  
from dual;

前几月

代码

------查询前几个月
select concat(to_char(add_months(sysdate,-几个月), 'YYYY-MM-'),'01 00:00:00') start_time,
       concat(to_char(last_day(add_months(sysdate,-几个月)),'YYYY-MM-DD '),' 23:59:59') end_time 
from dual;
------示例、查询前六月到前四月
select concat(to_char(add_months(sysdate,-6), 'YYYY-MM-'),'01 00:00:00') start_time,
       concat(to_char(last_day(add_months(sysdate,-4)),'YYYY-MM-DD '),' 23:59:59') end_time 
from dual;

前几年

代码

------查询前几年
select concat(extract(year from sysdate)-几年,'-01-01 00:00:00') start_time,
       concat(extract(year from sysdate)-几年,'-12-31 23:59:59') end_time 
from dual;
------示例、查询前三年到前一年
select concat(extract(year from sysdate)-3,'-01-01 00:00:00') start_time,
       concat(extract(year from sysdate)-1,'-12-31 23:59:59') end_time 
from dual;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ​有人说 遇上一个人要一分钟的时间 喜欢一个人只需一小时的时间 爱上一个人要一天的时间 而董小月爱上王小枫,只用了...
    稀饭小记阅读 500评论 0 0
  • 作为一个工科男,接触到的人文知识并不多。如何在公式和代码之外,更多地形成自己的世界观和人生观,我决定每天晚上睡前读...
    是杰夫呀阅读 1,876评论 2 5
  • ——卓夫文暄 人人都有惰性,缺乏应有的积极自律 人生状态就是一坛死水 而事物和生命皆有时效性 一个月前...
    卓夫文暄阅读 414评论 3 6
  • 表情是什么,我认为表情就是表现出来的情绪。表情可以传达很多信息。高兴了当然就笑了,难过就哭了。两者是相互影响密不可...
    Persistenc_6aea阅读 125,795评论 2 7
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,088评论 0 4