MySQL 索引两表连接查询优化案例

EXPLAIN SELECT * FROM class LEFT JOIN book ON class.card=book.card;

1611580309911.png


在左表建立索引

ALTER TABLE `class` ADD INDEX Y(`card`);

1611580452523.png

LEFT JOIN 条件用于确定如何从右表中查找匹配行,左表的数据会全部显示。


在右表建立索引

DROP INDEX Y ON class;
ALTER TABLE `book` ADD INDEX Y(`card`);

1611580382422.png

LEFT JOIN 索引建立在右表,有助于利用索引从右表中查找匹配行。相反,如果是 RIGHT JOIN,索引应该建立在左表。

你可能感兴趣的:(mysql)