1. 程式人生 > >MySql資料庫的優化-MySql中is NULL、ISNULL()和IFNULL()執行速度的比較

MySql資料庫的優化-MySql中is NULL、ISNULL()和IFNULL()執行速度的比較

在查詢過程中,我們經常用到非空和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()。