這個問題突然出現在我的腦海裏......我有一張桌子,根據他們的ID將兩張桌子連在一起。該CREATE TABLE
看起來是這樣的:我是否也應索引包含在PRIMARY KEY中的列?
CREATE TABLE `ticket_contact` (
`ticket_id` INT NOT NULL,
`entity_id` INT NOT NULL,
`notify` INT NOT NULL DEFAULT 0,
PRIMARY KEY (`ticket_id`, `entity_id`),
KEY `ticket_id` (`ticket_id`),
KEY `entity_id` (`entity_id`)
)
我不知道是否有任何需要,包括最後兩行KEY
。它會給我提高速度與下列查詢,或將自動索引PRIMARY KEY
內的個別列?
SELECT * FROM ticket_contact WHERE ticket_id=1;
SELECT * FROM ticket_contact WHERE entity_id=1;