本文主要是介绍oracle通过指定的时间获取时间所在的季度、上半年、下半年、年的月份、指定月份的上一个月份,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、获得根据时间获得该季度所在的月份:
SELECT to_char(add_months(TRUNC(to_date('2020-07-01 00:00:00','yyyy-mm-dd hh24:mi:ss'), 'Q'), +3)-1, 'YYYYMM') FROM dual; --根据指定日期获取该日期季度的月份
如下图所示:
2、根据时间获得该时间所属的上半年或下半年所在的月份:
select case when to_char(to_date('2020-03-01 00:00:00','yyyy-mm-dd hh24:mi:ss'),'mm')<7 then to_char(to_date('2020-03-01 00:00:00','yyyy-mm-dd hh24:mi:ss'),'YYYY')||'06' else to_char(to_date('2020-03-01 00:00:00','yyyy-mm-dd hh24:mi:ss'),'YYYY')||'12' end from dual;
如下图所示:
3、根据根据时间获得该时间所属的年:
SELECT to_char(to_date('2020-06-01 00:00:00','yyyy-mm-dd hh24:mi:ss'), 'yyyy') FROM dual; --根据指定日期获取该日期年
如下图所示:
4、根据当前月获取上个月的月份
select to_char(trunc(add_months(to_date('202003','yyyymm'),-1),'mm'),'yyyymm') from dual;
如下图所示:
SELECT to_char(to_date('2020-06-01 00:00:00','yyyy-mm-dd hh24:mi:ss'), 'yyyy'),--获得当前时间的年to_date(to_char(to_date('2020-06-01 00:00:00','yyyy-mm-dd hh24:mi:ss'), 'yyyy')||'-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss'),--获得当前年的1月1号to_date(to_char(add_months(to_date('2020-06-01 00:00:00','yyyy-mm-dd hh24:mi:ss'),-12), 'yyyy')||'-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss'),--获得去年的1月1号to_char(add_months(to_date('2020-06-01 00:00:00','yyyy-mm-dd hh24:mi:ss'),-12), 'yyyy-mm-dd hh24:mi:ss'),--获得去年同期时间to_char(to_date('2020-06-01 00:00:00','yyyy-mm-dd hh24:mi:ss'), 'mm')--获得当前时间的月
FROM dual;
如:
这篇关于oracle通过指定的时间获取时间所在的季度、上半年、下半年、年的月份、指定月份的上一个月份的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!