SQL> SQL> SELECT to_char(SYSDATE,'yyyy-mm-dd hh24:mi:ss') 现在时间,to_char(sysdate,'hh24') 当前小时数,to_char(sysdate,'hh24')-1 前一小时数 2 FROM dual; 现在时间 当前小时数 前一小时数 ------------------- ---------- ---------- 2016-11-23 10:04:25 10 9 SQL> SQL> SELECT to_char(sysdate,'dd') AS 当天天数,to_char(sysdate,'iw') AS 本周周数,to_char(sysdate,'mm') AS 本月月份 2 ,to_char(sysdate,'q') AS 本季度数,to_char(sysdate,'yyyy') AS 本年度数 3 FROM dual; 当天天数 本周周数 本月月份 本季度数 本年度数 -------- -------- -------- -------- -------- 23 47 11 4 2016 SQL> SQL> SELECT trunc(sysdate) AS 当天日期,trunc(sysdate-1) AS 昨天日期 2 ,TRUNC(sysdate,'iw') AS 本周第一天星期一,TRUNC(sysdate,'d') AS 本周第一天星期日 3 ,trunc(SYSDATE, 'MM') AS 本月第一天,TRUNC(sysdate,'q') AS 本季度第一天,trunc(sysdate,'YYYY') AS 本年第一天 4 FROM dual 5 ; 当天日期 昨天日期 本周第一天星期一 本周第一天星期日 本月第一天 本季度第一天 本年第一天 ----------- ----------- ---------------- ---------------- ----------- ------------ ----------- 2016-11-23 2016-11-22 2016-11-21 2016-11-20 2016-11-1 2016-10-1 2016-1-1 SQL> SQL> SELECT TRUNC(sysdate,'iw')+7 AS 本周最后一天星期一,TRUNC(sysdate,'d')+7 AS 本周第一天星期日 2 ,trunc(last_day(SYSDATE)) AS 本月最后一天,add_months(trunc(sysdate,'Q'),3)-1 AS 本季度第一天,add_months(trunc(sysdate,'yyyy'),12)-1 AS 本年最后一天 3 FROM dual; 本周最后一天星期一 本周第一天星期日 本月最后一天 本季度第一天 本年最后一天 ------------------ ---------------- ------------ ------------ ------------ 2016-11-28 2016-11-27 2016-11-30 2016-12-31 2016-12-31 SQL> SQL> select trunc(sysdate, 'month') 本月第一天,trunc(last_day(sysdate)) 本月最后一天, 2 trunc(add_months(sysdate, -1), 'month') 上月第一天,trunc(last_day(add_months(sysdate, -1))) 上月最后一天, 3 trunc(last_day(add_months(SYSDATE, 0))+1) 下个月第一天,trunc(last_day(add_months(SYSDATE, 1))) 下个月最后一天, 4 trunc(add_months(sysdate, -12), 'month') 去年本月第一天,trunc(last_day(add_months(sysdate, -12))) 去年本月最后一天 5 from dual; 本月第一天 本月最后一天 上月第一天 上月最后一天 下个月第一天 下个月最后一天 去年本月第一天 去年本月最后一天 ----------- ------------ ----------- ------------ ------------ -------------- -------------- ---------------- 2016-11-1 2016-11-30 2016-10-1 2016-10-31 2016-12-1 2016-12-31 2015-11-1 2015-11-30 SQL>
SQL>
SQL> SELECT trunc(last_day(add_months(sysdate, -1)))-trunc(add_months(sysdate, -1), 'month')+1 上月天数
2 ,trunc(last_day(add_months(sysdate, 0)))-trunc(add_months(sysdate, 0), 'month')+1 当月天数
3 ,ADD_MONTHS(TRUNC(SYSDATE, 'YYYY'), 12)-TRUNC(SYSDATE, 'YYYY') 当年天数
4 FROM dual;
上月天数 当月天数 当年天数
---------- ---------- ----------
31 30 366
select sysdate from dual; /* sysdate ---------- 20-SEP-07 日期格式 說明 ------------------------------------------------------------------------ YYYY/MM/DD -- 年/月/日 YYYY -- 年(4位) YYY -- 年(3位) YY -- 年(2位) MM -- 月份 DD -- 日期 D -- 星期 -- 星期日 = 1 星期一 = 2 星期二 = 3 -- 星期三 = 4 星期四 = 5 星期五 = 6 星期六 = 7 DDD -- 一年之第幾天 WW -- 一年之第幾週 W -- 一月之第幾週 YYYY/MM/DD HH24:MI:SS -- 年/月/日 時(24小時制):分:秒 YYYY/MM/DD HH:MI:SS -- 年/月/日 時(非24小時制):分:秒 J -- Julian day,Bc 4712/01/01 為1 RR/MM/DD -- 公元2000問題-- 00-49 = 下世紀;50-99 = 本世紀 */ select to_char(sysdate,'YYYY/MM/DD') FROM DUAL; -- 2007/09/20 select to_char(sysdate,'YYYY') FROM DUAL; -- 2007 select to_char(sysdate,'YYY') FROM DUAL; -- 007 select to_char(sysdate,'YY') FROM DUAL; -- 07 select to_char(sysdate,'MM') FROM DUAL; -- 09 select to_char(sysdate,'DD') FROM DUAL; -- 20 select to_char(sysdate,'D') FROM DUAL; -- 5 select to_char(sysdate,'DDD') FROM DUAL; -- 263 select to_char(sysdate,'WW') FROM DUAL; -- 38 select to_char(sysdate,'W') FROM DUAL; -- 3 select to_char(sysdate,'YYYY/MM/DD HH24:MI:SS') FROM DUAL; -- 2007/09/20 15:24:13 select to_char(sysdate,'YYYY/MM/DD HH:MI:SS') FROM DUAL; -- 2007/09/20 03:25:23 select to_char(sysdate,'J') FROM DUAL; -- 2454364 select to_char(sysdate,'RR/MM/DD') FROM DUAL; -- 07/09/20
--http://blog.sina.com.cn/s/blog_73e1106501013fzw.html
Q 说:
欢迎转载,但请注明内容的来源或URL;
“[转]”篇章,必须保留原始来源且勿添加本blog指向。
欢迎转载,但请注明内容的来源或URL;
“[转]”篇章,必须保留原始来源且勿添加本blog指向。