SELECT SYSDATE+1/24 FROM dual;
我这么查询出来的,是一个字符串,而不是一个时间格式?
如何转化成时间(包括时,分,秒)

解决方案 »

  1.   


    --一小时后的时间
    SELECT SYSDATE+1/24 FROM dual; --结果就是一个date型的啊!
    如果要显示格式,可用to_char指定格式:
    SELECT to_char(SYSDATE+1/24,'yyyy-mm-dd hh24:mi:ss') FROM dual; --一个月后
    SELECT to_char(add_months(SYSDATE,1),'yyyy-mm-dd hh24:mi:ss') FROM dual; 
      

  2.   

    --当前时间的后一个小时
    已写入 file afiedt.buf  1* select sysdate, to_char(sysdate+1/24 ,'yyyy-mm-dd hh24:mi:ss') from dual
    SQL> /SYSDATE           TO_CHAR(SYSDATE+1/2
    ----------------- -------------------
    20100927 22:07:28 2010-09-27 23:07:28--当前时间的后一个月
    SQL> select sysdate,add_months(sysdate,1) from dual;SYSDATE           ADD_MONTHS(SYSDAT
    ----------------- -----------------
    20100927 22:08:27 20101027 22:08:27
      

  3.   

    select 
    sysdate + interval '1' hour "一小时后",
    sysdate + interval '1' month "一个月后"
    from dual;
      

  4.   


      1  select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') "当前时间",
      2  to_char(sysdate+ interval '1' hour,'yyyy-mm-dd hh24:mi:ss') "一小时后",
      3  to_char(sysdate+ interval '1' month,'yyyy-mm-dd hh24:mi:ss') "一个月后"
      4* from dual
    SQL> /当前时间            一小时后            一个月后
    ------------------- ------------------- -------------------
    2010-09-28 12:56:36 2010-09-28 13:56:36 2010-10-28 12:56:36
      

  5.   


    select DATEADD(hour,1,GETDATE())--一小时后
    select DATEADD(month,1,GETDATE())--一月后