簡単なクエリがあります:
SELECT id
FROM logo
WHERE (`description` LIKE "%google%" AND `active` = "y")
ORDER BY id ASC
テーブルlogo
(MyISAM)は、2402024行を含む約30のフィールドで構成されています。フィールドdescription
はnullではないvarchar(255)です。フィールドactive
はENUM('y'、'n')であり、これらのインデックスのカーディナリティはnullではありません。
`active`: BTREE Card. 2
`description`: BTREE Card. 200168
クエリのEXPLAINはこれを返します:
select_type: SIMPLE
table: logo
type: ALL
possible_keys: active
key: NULL
key_len: NULL
ref: NULL
rows: 2402024
Extras: Using where
クエリがdescription
インデックスを使用していない理由と、テーブルを最適化して、このクエリが全表スキャンなしでスムーズに実行されるようにするにはどうすればよいのでしょうか。
すでにテーブルを最適化し、エラーをチェックしました。