だから私はいつもExtraカラムの "Where Using"を見るのは良いことだと思っていました。しかし、私はEXPLAINをintepretingすることで同僚のために茶色のバッグランチを計画していましたが、今はそれほど確かではありません。 MySQLディクショナリは、 "Where Using"に関する注記でこれを示しています。MySQLの最適化:EXPLAIN "Extra"カラムに "Where Using"が含まれています
WHERE句を使用して、次のテーブルとの一致またはクライアントへの送信を制限します。テーブルからすべての行を取り出したり調べたりするつもりがない限り、Extra値がWhere whereを使用せず、テーブル結合タイプがALLまたはindexの場合は、クエリに問題がある可能性があります。 WHERE句のすべての部分にインデックスを使用していても、カラムがNULLの場合はWhereを使用すると表示されることがあります。
これは、ということを信じるように私をリードしても、私の句は唯一の列がNULL値を持つことができる場合、MySQLはまだ行を検討することを、インデックスの一部が含まれています。
本当ですか?もしそうなら、私はそれを必要としない場合はNULLを含まないように列を変更すべきですか?私はスピードブーストを見ますか?
私はちょうどテストをしました:列をヌルからヌルに変更してから "どこで使うか"が消えました。 – tomwang1013