2012-07-04 51 views
1

我有一個case語句返回一個日期;如何在計算中使用case語句的結果

case when (ma.first_active_date is not null or ma.first_deemed_date is not null) 
      then (least(nvl(ma.first_active_date,sysdate),nvl(ma.first_deemed_date,sysdate))) 
      else (ma.status_date) end djf 

我該如何計算返回日期和sysdate之間的年數?

回答

0

你應該能夠簡單地在你的case語句到表達堵塞,沒有djf別名,當然:

((case when (ma.first_active_date is not null or ma.first_deemed_date is not null) 
      then (least(nvl(ma.first_active_date,sysdate),nvl(ma.first_deemed_date,sysdate))) 
      else (ma.status_date) end) - sysdate) diff_from_sysdate 
+0

確定,這將返回天的計數,但由於 – James