select decode( requestdate-handledate,0,1 ) from table1

解决方案 »

  1.   

    sorry:
     select decode( sign(requestdate-handledate),1,0,1 ) from table1
      

  2.   

    1* select decode(sign(to_date('2004-01-02','yyyy-mm-dd')-to_date('2004-01-01','yyyy-mm-dd')),1,0,1
    SQL> /DECODE(SIGN(TO_DATE('2004-01-02','YYYY-MM-DD')-TO_DATE('2004-01-01','YYYY-MM-DD')),1,0,1)
    -----------------------------------------------------------------------------------------
                                                                                            0SQL> ed
    Wrote file afiedt.buf
      1* select decode(sign(to_date('2004-01-01','yyyy-mm-dd')-to_date('2004-01-02','yyyy-mm-dd')),1,0,1
    SQL> /DECODE(SIGN(TO_DATE('2004-01-01','YYYY-MM-DD')-TO_DATE('2004-01-02','YYYY-MM-DD')),1,0,1)
    -----------------------------------------------------------------------------------------
                                                                                            1SQL> ed
    Wrote file afiedt.buf
      1* select decode(sign(to_date('2004-01-01','yyyy-mm-dd')-to_date('2004-01-01','yyyy-mm-dd')),1,0,1
    SQL> /DECODE(SIGN(TO_DATE('2004-01-01','YYYY-MM-DD')-TO_DATE('2004-01-01','YYYY-MM-DD')),1,0,1)
    -----------------------------------------------------------------------------------------
                                                                                            1SQL>
      

  3.   

    select decode( requestdate-handledate,1,0,1 ) from table1
      

  4.   

    sign函數的返回值為-1,0,1
    decode函數中能識別字符串和數字,但不能識別表達式(結果為真或假),
    所以用sign將表達式的結果轉換為數字,就可以使用decode函數來判斷了,
    具體做法LGQDUCKY(飘)說的已經很清楚了