Oracle 日期操作

ORACLE日期时间函数大全

   TO_DATE格式(以时间:2007-11-02   13:45:25为例)
   
        Year:      
        yy two digits 两位年                显示值:07
        yyy three digits 三位年                显示值:007
        yyyy four digits 四位年                显示值:2007
            
        Month:      
        mm    number     两位月              显示值:11
        mon    abbreviated 字符集表示          显示值:11月,若是英文版,显示nov     
        month spelled out 字符集表示          显示值:11月,若是英文版,显示november 
          
        Day:      
        dd    number         当月第几天        显示值:02
        ddd    number         当年第几天        显示值:02
        dy    abbreviated 当周第几天简写    显示值:星期五,若是英文版,显示fri
        day    spelled out   当周第几天全写    显示值:星期五,若是英文版,显示friday        
        ddspth spelled out, ordinal twelfth 
             
              Hour:
              hh    two digits 12小时进制            显示值:01
              hh24 two digits 24小时进制            显示值:13
              
              Minute:
              mi    two digits 60进制                显示值:45
              
              Second:
              ss    two digits 60进制                显示值:25
              
              其它
              Q     digit         季度                  显示值:4
              WW    digit         当年第几周            显示值:44
              W    digit          当月第几周            显示值:1
              
        24小时格式下时间范围为: 0:00:00 - 23:59:59....      
        12小时格式下时间范围为: 1:00:00 - 12:59:59 .... 

 

1.查询当前系统时间。

select sysdate from dual;


 

2.日期转换为字符串函数用法

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss')  from dual;   //日期转化为字符串   
select to_char(sysdate,'yyyy') as nowYear   from dual;   //获取时间的年   
select to_char(sysdate,'mm')    as nowMonth from dual;   //获取时间的月   
select to_char(sysdate,'dd')    as nowDay    from dual;   //获取时间的日   
select to_char(sysdate,'hh24') as nowHour   from dual;   //获取时间的时   
select to_char(sysdate,'mi')    as nowMinute from dual;   //获取时间的分   
select to_char(sysdate,'ss')    as nowSecond from dual;   //获取时间的秒
扫描二维码关注公众号,回复: 287534 查看本文章
select to_char(sysdate,'yyyy-mm-dd hh24:mi;ss') from dual;

3.字符串转换为日期

 select to_date('2012-12-12 12:12:12','yyyy-mm-dd hh24:mi:ss') from dual;

 4.日期的查询

查询 2012-12-12当天区间的所有数据。
select *from hello where y_date between to_date('2012-12-12 00:00:00','YYYY-MM-DD hh24:mi:ss') and to_date('2012-12-12 23:59:59','yyyy-mm-dd hh24:mi:ss');


查询日期如果用等号(=)判断时,日期格式必须精确到秒,否则查询不到数据。
select *from hello where y_date = to_date('2012-12-12 23:12:12','yyyy-mm-dd hh24:mi:ss');(精确到秒,可以查询)



select *from hello where y_date = to_date('2012-12-12 23:12','yyyy-mm-dd hh24:mi');(精确到分,查询不到)

猜你喜欢

转载自762612388.iteye.com/blog/2357496