如果列中也存储了一些 NULL 值,MySQL COUNT() 函数会返回什么?

mysqlmysqli database更新于 2024/3/14 6:50:00

当我们使用 MySQL COUNT() 函数计算列中存储的值时,如果该列也存储了一些 NULL 值,则 MySQL 会忽略 NULL 并仅返回非 NULL 值的结果。为了理解这一点,我们使用来自表"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)

现在,以下查询对‘Salary’列应用 COUNT() 函数 −

mysql> Select COUNT(salary) from employee568;
+---------------+
| COUNT(salary) |
+---------------+
| 6             |
+---------------+
1 row in set (0.15 sec)

从上面的结果集可以清楚地看出,MySQL 忽略 NULL 并且仅返回非 NULL 值的计数。


相关文章