CREATE TABLE table1 (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`kid` int(10) unsigned NOT NULL,
`table_group` varchar(100) COLLATE utf8_bin NOT NULL)
ENGINE=InnoDB;
我在下面的列上有索引;
PRIMARY KEY (`id`)
KEY `index1` (`kid`,`table_group`);
该表有500万行与where子句匹配;当我对下面的查询进行解释时,它正在执行filesort和运行时限制,需要10秒,这是非常高的。
mysql> explain select * from db1.table1 FORCE INDEX(index1) where kid=187 and table_group in ('NOT_PRESENT', 'NOTHING', 'PERROR') order by id limit 200\G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: tabl1
type: range
possible_keys: index1
key: index1
key_len: 306
ref: NULL
rows: 1052764
Extra: Using index condition; Using filesort
我想避免这个文件夹;请帮忙