sql 求和結果總為null的解決辦法


1.情景展示

  兩數相加,一個字段里有值,一個字段沒值,為null,二者相加的結果為null。

2.原因分析

  在SQL的語法中,數值+null=null,而不是數值+null=數值本身。

  以數值字段求和為例,在mysql中,僅在所有行數據都不為null時進行求和運算,否則直接返回null。

3.解決方案

  加非null判斷,並給予默認值,讓其符合加減乘除運算。

  mysql:使用ifnull(字段,默認值)

  oracle:使用NVL(字段,默認值)

補充一點:

  不同的工具,對於字段值為null是的展示結果是不一樣的,比如:在Navica工具中,顯示的是(Null);在plsql中,顯示的是空白;都是代表該字段無值的意思,只是顯示方式不同而已。

 

寫在最后

  哪位大佬如若發現文章存在紕漏之處或需要補充更多內容,歡迎留言!!!

 相關推薦:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM