MySql数据库的优化(二) MySql中is NULL、ISNULL()和IFNULL()运行速度的比较

时间:2024-03-07 19:01:04

在查询过程中,我们经常用到非空和is null的查询,为了更高效的查询,我们应该知道那种方法更快。

在上一篇中,我们已经添加了一些数据。根据这些数据我们就可以来做一些验证。

第一步,is NULL要比ISNULL()的比较

SELECT * from 表名 where 字段名 is NULL

SELECT * from 表名 where ISNULL(字段名)

由上面可以看出,is NULL要比ISNULL()快一点。

第二步,is NULL和IFNULL()的比较

SELECT * from 表名 where 字段名 is NULL

SELECT * from 表名 where IFNULL(字段名,\'0\') = \'0\';

由上面可以看出,可看出IFNULL()要比is NULL快一点。

 

综上所述,查询空值的运行速度基本上为IFNULL()>is NULL>ISNULL()。