小编Ton*_*aro的帖子

查询拒绝使用索引

使用MySQL 5.5.28版,

我有一个表定义如下:

CREATE TABLE IF NOT EXISTS `groups` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(80) NOT NULL,
  `desc` text NOT NULL,
  `permissions` varchar(80) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 ;
Run Code Online (Sandbox Code Playgroud)

如您所见,它非常简单.我在id字段上有一个主键.现在,我使用以下内容查询它:

SELECT permissions FROM groups WHERE id IN ('9', '8', '6','14','11','7','5');
Run Code Online (Sandbox Code Playgroud)

不幸的是,它拒绝使用密钥,它出现在我的慢查询日志中.

对它执行EXPLAIN提供:

mysql> EXPLAIN SELECT permissions FROM groups WHERE id IN ('9', '8', '6','14','11','7','5');
+----+-------------+--------+------+---------------+------+---------+------+------+-------------+
| id | select_type | table  | type | possible_keys | key  | key_len | ref  | rows …
Run Code Online (Sandbox Code Playgroud)

mysql performance mysql-slow-query-log

0
推荐指数
1
解决办法
62
查看次数

标签 统计

mysql ×1

mysql-slow-query-log ×1

performance ×1