在 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