在 SUM() 函式中使用條件表示式時 MySQL 如何求值?
眾所周知,透過在 SUM() 函式中使用條件表示式,我們可以獲取滿足該條件的行數。因此,在這種情況中,MySQL 每當條件為真時求值為 1,每當條件為假時求值為 0。
為了理解它,考慮以下具有以下詳細資訊的“employee”表示例 −
mysql> Select * from Employee; +----+--------+--------+ | ID | Name | Salary | +----+--------+--------+ | 1 | Gaurav | 50000 | | 2 | Rahul | 20000 | | 3 | Advik | 25000 | | 4 | Aarav | 65000 | | 5 | Ram | 20000 | | 6 | Mohan | 30000 | | 7 | Aryan | NULL | | 8 | Vinay | NULL | +----+--------+--------+ 8 rows in set (0.00 sec)
現在,假設如果我們想知道工資超過 20000 的總行數,則可以在 SUM() 函式中使用條件表示式,如下所示 −
mysql> Select SUM(Salary>20000) from employee568; +-------------------+ | SUM(Salary>20000) | +-------------------+ | 4 | +-------------------+ 1 row in set (0.00 sec)
上面的結果集顯示有 4 名員工獲得的工資超過 20000。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP