select语句能否算日期格式字段相减?或者只要获得日期格式的年份就可以了

解决方案 »

  1.   

    可以啊!
    select    TO_DATE('20040723','YYYYMMDD')- TO_DATE('20040723','YYYYMMDD') from dual----
      

  2.   

    ORACLE 日期相减 得到的是天数  如果楼主需要具体 别的再转化一下只要得到年份可以用下面的方法
    select to_char(sysdate,'yyyy')  from dual;得到   2007
      

  3.   

    select to_date('20070301','yyyymmdd') -1 from dual
      

  4.   

    直接用Oracle里面的日期函数就可以了
    select   ROUND(TO_DATE('2004-07-23','YYYY-MM-DD')- TO_DATE('2004-07-23','YYYY-MM-DD'),'YEAR') from dual这样就获得日期格式的年份
      

  5.   

    两日期相减得出为TimeStamp 类型。
    如 timestamp '1' day
    timestamp '1 12:00:00' day to second
    诸如此类........
      

  6.   

    得到年份的另一种写法:
    select extract(year from sysdate) from dual
      

  7.   

    floor((date2-date1) /365) 作为年  
    floor((date2-date1, 365) /30) 作为月  
    mod(mod(date2-date1, 365), 30)作为日.