SQL 索引没有提高速度
SQL Indexing not improving speed
给定一个 SQL 数据库,其索引为 (startpage, endpage)
,具有关系 Articles(*ID*, title, startpage, endpage)
,为什么不是查询
SELECT title
FROM Articles
WHERE endpage = 100;
比之前的索引加快了速度?
对于这个奇怪的问题表示歉意,因为它来自没有解释的练习论文。
为什么显示的索引对该查询没有帮助:因为 endpage
不是索引的最左边的列。
查看我对 Does Order of Fields of Multi-Column Index in MySQL Matter 的回答以获得更多解释(该问题是关于 MySQL,但答案应该适用于 B-tree 索引的任何实现)。
给定一个 SQL 数据库,其索引为 (startpage, endpage)
,具有关系 Articles(*ID*, title, startpage, endpage)
,为什么不是查询
SELECT title
FROM Articles
WHERE endpage = 100;
比之前的索引加快了速度?
对于这个奇怪的问题表示歉意,因为它来自没有解释的练习论文。
为什么显示的索引对该查询没有帮助:因为 endpage
不是索引的最左边的列。
查看我对 Does Order of Fields of Multi-Column Index in MySQL Matter 的回答以获得更多解释(该问题是关于 MySQL,但答案应该适用于 B-tree 索引的任何实现)。