【发布时间】:2018-09-03 09:45:00
【问题描述】:
我有这三个表:
season(id, season);
game_in_season(id, id_season, game);
player_in_game(id, id_game, full_name, pts);
我想选择索引为 5 的所有赛季球员并按 pts 排序。我应该使用哪个索引?我在 pg.pts 列上有一个索引,但是当我将表与 s 和 gs 表连接时不使用它。它仅在我制作“select * from pg order by pts desc”时使用。
EXPLAIN SELECT pg.* FROM season s, game_in_season gs, player_in_game pg
WHERE s.id = gs.id_season AND gs.id = pg.id_game
AND s.id = 5
ORDER BY pg.pts DESC
在 table = 's' 的一行中有额外的 = 'Using temporary;使用文件排序'。我应该使用哪个索引来不使用文件排序?甚至可以在不使用文件排序的情况下进行此查询吗?
【问题讨论】: