做一个报表。判断控件输入的日期计算同比。如何得到这个日期的前一年阿,如
选择2009/01/01,得到2009/01/01和2008/01/01

解决方案 »

  1.   

    SELECT TO_CHAR(ADD_MONTHS(sysdate,-12),'yyyy/mm/dd') FROM dual;
      

  2.   

    我试过这类的。通不过。用的一个报表软件不能识别。sysdate 这里是一个参数。
      

  3.   

    你在Oracle里,我们只能给你Oracle的解决办法啊
    不懂你想要怎么做
      

  4.   

    SELECT TO_CHAR(ADD_MONTHS(TO_DATE('2009/09/01','yyyy/mm/dd'),-12),'yyyy/mm/dd') FROM dual;
    其中,'2009/09/01'是你传入的字符串参数。
      

  5.   

    搞定了。直接ADD_MONTHS这个参数就可以了。这个软件直接设置这个参数是日期型,所以转换导致软件识别不了了哈。
      

  6.   

    啊。不对。这句在PL/SQL里运行提示  ora-01861文字与格式字符串不匹配