だから、おまけの欄に「Using Where」があるのはいいことだなといつも思っていました。しかし、私は EXPLAIN を解釈する同僚のために茶色のバッグ ランチを計画していましたが、今はよくわかりません。MySQL のドキュメントでは、「Using Where」に関するメモに次のように記載されています。
WHERE 句を使用して、次のテーブルと照合するか、クライアントに送信する行を制限します。テーブルからすべての行をフェッチまたは検査する意図がない限り、Extra 値が Using where ではなく、テーブル結合タイプが ALL または index である場合、クエリに何か問題がある可能性があります。WHERE 句のすべての部分にインデックスを使用している場合でも、列が NULL になる可能性がある場合は where の使用が表示されることがあります。
これにより、WHERE 句にインデックスの一部しか含まれていない場合でも、列に NULL 値が含まれる可能性がある場合でも、MySQL は行を調べると考えるようになります。
本当?もしそうなら、必要がなければ NULL を含まないように列を変更する必要がありますか? スピードブーストは見られますか?