【发布时间】:2013-08-02 14:58:33
【问题描述】:
我的桌子:
CREATE TABLE test (
id INT AUTO_INCREMENT,
anotherID INT,
PRIMARY KEY (id),
INDEX testIndex (id, anotherID)
);
INSERT INTO test VALUES (1,1),(2,1),(3,1),(4,1);
我的查询:
EXPLAIN SELECT *
FROM test
WHERE id = 1
AND anotherID = 1;
仅使用 PRIMARY 键。然而,testIndex 不是。我的问题是……为什么?由于 SELECT 引用了 id 和 anotherID 中的值,不应该使用 testIndex 吗?
SQL 小提琴:
【问题讨论】:
-
PK满足条件为什么要使用testIndex?