create table tb_hoge( : id_a tinyint not null, id_b int unsigned not null default 0, id_c int unsigned not null, id_d int unsigned not null auto_increment, : index(id_a,id_b), index(id_a,id_c), index(id_a,id_d), );
このようなテーブルに対し、
select * from tb_hoge where id_a=a and id_c>=b;
というSQL文を実行すると MySQL が不適切な INDEX(id_a,id_d など) を使用してしまうことがあるらしい。
select * from tb_hoge use index(id_a_2) where id_a=a and id_c>=b;
のように使用する INDEX を指定することで回避できるらしい。