このスレッド 正確にはMySQLではありませんが、同様です。そこに示されているテストによると:
IS NULL
スキャンを必要としないため、より効率的です。
シークは、対象となるレコードのみが含まれるため、スキャンよりも一般的に高速ですが、スキャンにはすべての行が含まれます。詳細については、ここ 。
もう1つの違い(パフォーマンスではありませんが)は、否定構文です。
IS NOT NULL /* using NOT operator */
! ISNULL() /* using exclamation mark */