count加表達式,Mysql中Count函數的正確使用!


直接使用Count(*)或Count(1)這些大家基本都會,主要是Count函數還可以和sum一樣加滿足表達式的統計:express
關於Count函數表達式的用法,目前個人只知道1種:

使用:Count(表達式 Or null)

sql 語句中count()有條件的時候為什么要加上or null。

如count(sex= ‘男生’ or NULL) 這部分,為什么要加上or NULL,直接count(sex=‘男生’)有什么問題嗎?不就是要找sex= '男生’的數據嗎,為什么要計算NULL的數據。

答案:
因為當 sex不是男生時 sex=‘男生’ 結果false。不是 NULL,
count在值是NULL是不統計數, (count(‘任意內容’)都會統計出所有記錄數,因為count只有在遇見null時不計數,即count(null)==0,因此前者單引號內不管輸入什么值都會統計出所有記錄數),至於加上or NULL , 很像其他編程里的or運算符,第一個表達式是true就是不執行or后面的表達式,第一個表達式是false 執行or后面的表達式 。當sex不為男生時sex= ‘男生’ or NULL 的結果是NULL,Count才不會統計上這條記錄數
————————————————
版權聲明:本文為CSDN博主「莫讓等待空染塵」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_38201157/article/details/100139543


免責聲明!

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



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