我有以下 MySQL/InnoDB 表。我在两列上添加了一个复合索引作为主键,我还添加了两个单列索引。使用复合索引后,我是否可以从单列索引中获得任何性能提升?还是我会更好地放弃它们?
CREATE TABLE `keywords` (
`keyword` varchar(100) NOT NULL,
`record_id` int(11) NOT NULL,
PRIMARY KEY (`keyword`,`record_id`),
KEY `keyword` (`keyword`),
KEY `record_id` (`record_id`),
CONSTRAINT `keywords_record_id_records_id` FOREIGN KEY (`record_id`) REFERENCES `records` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
如果有帮助,这个表的主要目的是作为一个前向索引,所以这个表是专门用 record_idINNER JOIN
编辑到我的主记录表的 id 列的。