码迷,mamicode.com
首页 > 其他好文 > 详细

日期函数

时间:2018-06-27 19:29:13      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:code   ber   ast   rom   bsp   trunc   select   返回   日期格   

--常见日期格式
以时间 2007-11-02   13:45:25 为例

YEAR:
    YY         两位年      显示值:07
    YYY     三位年      显示值:007
    YYYY     四位年      显示值:2007
            
MONTH:      
    MM        两位月         显示值:11
    MON        字符集表示     显示值:11月,若是英文版,显示NOV
    MONTH     字符集表示     显示值:11月,若是英文版,显示NOVEMBER
          
DAY:      
    DD        当月第几天            显示值:02
    DDD        当年第几天            显示值:02
    DY        当周第几天简写        显示值:星期五,若是英文版,显示FRI
    DAY        当周第几天全写        显示值:星期五,若是英文版,显示FRIDAY
             
HOUR:
    HH        12小时进制           显示值:01
    HH24     24小时进制           显示值:13
      
MINUTE:
    MI        60进制               显示值:45
      
SECOND:
    SS        60进制               显示值:25
      
其它:
    Q         季度                    显示值:4
    WW        当年第几周           显示值:44
    W        当月第几周           显示值:1
              
    24小时格式下时间范围为: 0:00:00 - 23:59:59
    12小时格式下时间范围为: 1:00:00 - 12:59:59

--日期、字符、数字类型互相转换,NUMBER和DATE要以TO_CHAR为中转
SELECT TO_DATE(2007-11-02   13:45:25,YYYY-MM-DD HH24:MI:SS) FROM DUAL;
SELECT TO_CHAR(SYSDATE,YYYY-MM-DD) FROM DUAL;
SELECT TO_CHAR(SYSDATE,MM) FROM DUAL;

--ROUND函数和TRUNC函数,可以操作日期也可以操作数值
SELECT ROUND(SYSDATE,MON)  FROM DUAL;     --会根据指定格式四舍五入

SELECT TRUNC(SYSDATE,MON)  FROM DUAL;     --返回截断时间,即不会四舍五入,例:2018-06-22  --> 2018-06-01

--其他函数
SELECT ADD_MONTHS(SYSDATE,2) FROM DUAL;     --日期推后2个月
SELECT LAST_DAY(SYSDATE) FROM DUAL;  --日期最后一天
SELECT NEXT_DAY(TO_DATE(2018-07-04,YYYY-MM-DD), 1) FROM DUAL;    --日期后的周几,以1为星期天开始
SELECT MONTHS_BETWEEN(SYSDATE, TO_DATE(2018-07-15,YYYY-MM-DD)) FROM DUAL;     --两个日期间有几个月

 

日期函数

标签:code   ber   ast   rom   bsp   trunc   select   返回   日期格   

原文地址:https://www.cnblogs.com/ls11736/p/9235613.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!