• oracle 日期常用函數 (SYSDATE、日期格式)


    SYSDATE                  2017-03-17 这个博客的说明不错哦  http://www.cnblogs.com/chuncn/archive/2009/04/29/1381282.html
    2 	--◎ 可得到目前系統的時間
    3 	
    4 	ex.
    5 	select sysdate from dual;
    6 	
    7 	sysdate
    8 	----------
    9 	20-SEP-07
    10 	
    11 	常用之日期格式
    12 	
    13 	日期格式 說明
    14 	------------------------------------------------------------------------
    15 	YYYY/MM/DD -- 年/月/日
    16 	YYYY -- 年(4位)
    17 	YYY -- 年(3位)
    18 	YY -- 年(2位)
    19 	MM -- 月份
    20 	DD -- 日期
    21 	D -- 星期
    22 	-- 星期日 = 1 星期一 = 2 星期二 = 3
    23 	-- 星期三 = 4 星期四 = 5 星期五 = 6 星期六 = 7
    24 	
    25 	DDD -- 一年之第幾天
    26 	WW -- 一年之第幾週
    27 	W -- 一月之第幾週
    28 	YYYY/MM/DD HH24:MI:SS -- 年/月/日 時(24小時制):分:秒
    29 	YYYY/MM/DD HH:MI:SS -- 年/月/日 時(非24小時制):分:秒
    30 	J -- Julian day,Bc 4712/01/01 為1
    31 	RR/MM/DD -- 公元2000問題
    32 	            -- 00-49 = 下世紀;50-99 = 本世紀
    33 	ex.
    34 	select to_char(sysdate,'YYYY/MM/DD') FROM DUAL; -- 2007/09/20
    35 	select to_char(sysdate,'YYYY') FROM DUAL; -- 2007
    36 	select to_char(sysdate,'YYY') FROM DUAL; -- 007
    37 	select to_char(sysdate,'YY') FROM DUAL; -- 07
    38 	select to_char(sysdate,'MM') FROM DUAL; -- 09
    39 	select to_char(sysdate,'DD') FROM DUAL; -- 20
    40 	select to_char(sysdate,'D') FROM DUAL; -- 5
    41 	select to_char(sysdate,'DDD') FROM DUAL; -- 263
    42 	select to_char(sysdate,'WW') FROM DUAL; -- 38
    43 	select to_char(sysdate,'W') FROM DUAL; -- 3
    44 	select to_char(sysdate,'YYYY/MM/DD HH24:MI:SS') FROM DUAL; -- 2007/09/20 15:24:13
    45 	select to_char(sysdate,'YYYY/MM/DD HH:MI:SS') FROM DUAL; -- 2007/09/20 03:25:23
    46 	select to_char(sysdate,'J') FROM DUAL; -- 2454364
    47 	select to_char(sysdate,'RR/MM/DD') FROM DUAL; -- 07/09/20 
    select sysdate,add_months(sysdate,12) from dual;        --加1年
    
    select sysdate,add_months(sysdate,1) from dual;        --加1月
    
    select sysdate,to_char(sysdate+7,'yyyy-mm-dd HH24:MI:SS') from dual;   --加1星期
    
    select sysdate,to_char(sysdate+1,'yyyy-mm-dd HH24:MI:SS') from dual;   --加1天
    
    select sysdate,to_char(sysdate+1/24,'yyyy-mm-dd HH24:MI:SS') from dual;  --加1小时
    
    select sysdate,to_char(sysdate+1/24/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --加1分钟
    
    select sysdate,to_char(sysdate+1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --加1秒 

    判断当前时间是上午下午还是晚上

    SELECT CASE

    WHEN to_number(to_char(SYSDATE,'hh24')) BETWEEN 6 AND 11 THEN '上午'

     WHEN to_number(to_char(SYSDATE,'hh24')) BETWEEN 11 AND 17 THEN '下午'

    WHEN to_number(to_char(SYSDATE,'hh24')) BETWEEN 17 AND 21 THEN '晚上'

    END

     FROM dual; 

     

    DATE格式转换:

    一、在使用Oracle的to_date函数来做日期转换时,很多Java程序员也许会直接的采用“yyyy-MM-dd   HH:mm:ss”的格式作为格式进行转换,但是在Oracle中会引起错误:“ORA   01810   格式代码出现两次”。 
    如:select   to_date( '2005-01-01   13:14:20 ', 'yyyy-MM-dd   HH24:mm:ss ')   from   dual; 
    原因是:SQL中不区分大小写,MM和mm被认为是相同的格式代码,所以Oracle的SQL采用了mi代替分钟。 
    select   to_date( '2005-01-01   13:14:20 ', 'yyyy-MM-dd   HH24:mi:ss ')   from   dual; 

    日期时间间隔操作:

    当前时间减去7分钟的时间
    select sysdate,sysdate - interval '7' MINUTE from dual
    当前时间减去7小时的时间
    select sysdate - interval '7' hour from dual
    当前时间减去7天的时间
    select sysdate - interval ’7’ day from dual
    当前时间减去7月的时间
    select sysdate,sysdate - interval '7' month from dual
    当前时间减去7年的时间
    select sysdate,sysdate - interval '7' year from dual
    时间间隔乘以一个数字
    select sysdate,sysdate - 8*interval '7' hour from dual

    来自:http://www.cnblogs.com/carekee/articles/4532905.html

      

      

  • 相关阅读:
    如何让某一个窗口位于所有的窗口最上面
    CString ,BSTR ,LPCTSTR之间关系和区别
    PPT演讲放映技巧__备注的妙用
    链接集合
    男人靠什么吸引女人
    配置IISweb容器之程序下载
    用windows2003免费搭建外网流媒体服务器
    人类记忆规律及法则
    MFC基础知识总结
    VC 定位窗体常用方法
  • 原文地址:https://www.cnblogs.com/-lin/p/6566356.html
Copyright © 2020-2023  润新知