ITPub博客

首页 > 数据库 > Oracle > 时间函数

时间函数

原创 Oracle 作者:onejq 时间:2015-02-22 15:23:17 0 删除 编辑
trunc()
可获得天、月、年初
SELECT TRUNC(SYSDATE) FROM dual
SELECT TRUNC(SYSDATE,'mm') FROM dual
SELECT TRUNC(SYSDATE,'yyyy') FROM dual
last_day()
获得月末
SELECT last_day(SYSDATE+30) FROM dual
注意30在括号外和括号内结果不一样
next_day()
下一个周天,可以是字符也可以是数字,数字1-7分别是周日至周六
SELECT next_day(SYSDATE,'mon') FROM dual
to_char()
把日期转换成字符
SELECT to_char(SYSDATE,'d') FROM dual
当周第几天
SELECT to_char(SYSDATE,'dd') FROM dual
日期
SELECT to_char(SYSDATE,'ddd') FROM dual
当年第几周
add_months()
SELECT add_months(SYSDATE,2) FROM dual
months_between()
SELECT trunc(months_between(SYSDATE,sysdate+32)) FROM dual

各时间函数组合应用可以巧妙解决一些问题:
 select count(*)      
   from ( select rownum-1 rnum      
       from all_objects      
       where rownum <= to_date('2002-02-28','yyyy-mm-dd') - to_date('2002-      
       02-01','yyyy-mm-dd')+1      
      )      
   where to_char( to_date('2002-02-01','yyyy-mm-dd')+rnum-1, 'D' )      
        not in ( '1', '7' )         
   查找2002-02-28至2002-02-01间除星期一和七的天数 

SELECT trunc(sysdate-30+ROWNUM) FROM xiaoling.rbac_domain
SELECT to_date('2013-12-23 23:33:22','yyyy-mm-dd hh24:mi:ss')+ROWNUM FROM xiaoling.rbac_domain
生成连续日期
SELECT trunc(to_date('2013-12-23 23:33:22','yyyy-mm-dd hh24:mi:ss')+ROWNUM/1440,'mi') FROM xiaoling.rbac_domain
连续的分钟
在左关联时很有用,如
在2015-02-21 12点到15点每分钟的交易量,并把没有交易的时间排到最前面
SELECT *
  FROM (SELECT TO_DATE('2015-02-21 12', 'yyyy-mm-dd hh24') +
               (ROWNUM - 1) / 1440 RECORD_TIME
          FROM table_name
         WHERE ROWNUM <= 180)
  LEFT JOIN


 (SELECT TRUNC(TRADE_TIME, 'mi') RECORD_TIME, COUNT(1) CNT
    FROM table_name
   WHERE TRADE_TIME BETWEEN TO_DATE('2015-02-21 12', 'yyyy-mm-dd hh24') AND
         TO_DATE('2015-02-21 15', 'yyyy-mm-dd hh24')
     AND TRIM(MCH_NAME) = '安徽省星启天网络技术有限公司'
     AND TRADE_STATE = 2
   GROUP BY TRUNC(TRADE_TIME, 'mi'))
 USING (RECORD_TIME)
 ORDER BY CNT NULLS FIRST, RECORD_TIME

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/14888950/viewspace-1439701/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: mongodb使用
请登录后发表评论 登录
全部评论

注册时间:2015-01-19

  • 博文量
    10
  • 访问量
    18122