mysql的覆盖索引
作者:bin思想就是使用索引即可找到需要使用的数据,不需要回表去查数据,其实就是索引中已经包含来你select的数据,不需要回到表里面去找数据来。
例如如下的DB:
CREATE TABLE `yezhu` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, `number` varchar(255) DEFAULT NULL, `phone` varchar(20) DEFAULT NULL, `used` int(11) NOT NULL DEFAULT '1' COMMENT '1代表未停车', PRIMARY KEY (`id`), KEY `l` (`name`,`id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8
我们使用如何命令:
explain select id,`name` from `wwj`.`yezhu` where `name` = "曾彬";
可以看到,只要是出现Using index,即表示覆盖索引:
Extra : Using index