Почему mysql по-прежнему отображается «используя где; используя индекс» в extr при использовании конвертирующего индекса - PullRequest
0 голосов
/ 23 апреля 2020

Я использовал конвертирующий индекс в запросе mysql. Это должен быть дополнительный индекс использования, когда я объясняю запрос sql, но это действительно "использование где; использование индекса". Почему?

Mysql версия: 5.6.28

Структура моей таблицы:

CREATE TABLE `case` (
  `id` bigint(21) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
  `order_id` bigint(21) NOT NULL COMMENT 'order id',
  `time` varchar(30) DEFAULT NULL COMMENT 'time',
  `name` varchar(30) NOT NULL COMMENT 'name',
  `img` varchar(50) DEFAULT NULL COMMENT 'image',
  `title_desc` varchar(200) DEFAULT NULL COMMENT 'title desc',
  `gender` varchar(10) DEFAULT NULL COMMENT 'gender',
  `age` int(10) DEFAULT NULL COMMENT 'month age',
  `tag` varchar(100) DEFAULT NULL COMMENT 'tag',
  `tag_suggest` varchar(500) DEFAULT NULL COMMENT 'tag suggest',
  `desc` varchar(1000) DEFAULT NULL COMMENT 'description',
  `content1` text COMMENT 'content1',
  `content2` text COMMENT 'content2',
  `content3` text COMMENT 'content3',
  `status` tinyint(4) NOT NULL COMMENT 'status',
  `version` bigint(13) NOT NULL COMMENT 'version',
  `createTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'create time',
  `gmt_updateTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'update time',
  PRIMARY KEY (`id`),
  KEY `idx_diagnosis_status_order_id` (`tag`,`status`,`order_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=470738 DEFAULT CHARSET=utf8mb4 COMMENT='case';

my sql:

explain
SELECT order_id FROM consultcase.`case` where tag='hd' and status =2 limit 1000,10;

and 

explain
SELECT id FROM consultcase.`case` where tag='hd' and status =2 limit 1000,10;

enter описание изображения здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...