錯誤訊息:
 ORA-01476: 除數等於 0
 01476. 00000 -  "divisor is equal to zero"


解決方式:
 使用NULLIF(欄位名稱,0)可以避免該問題。
 
測試SQL:
 SELECT  TO_NUMBER(:AAA) / NULLIF(TO_NUMBER(:BBB),0) TEST FROM DUAL;
 SELECT  100 / NULLIF(0,0) TEST FROM DUAL;
  > 傳回:(null)

 實際使用時,還可以搭配NVL使用。
 SELECT  NVL(100/NULLIF(0,0),0) TEST FROM DUAL;
  > 傳回:0

arrow
arrow
    全站熱搜

    Nathan 發表在 痞客邦 留言(0) 人氣()