考虑以下三个查询:
select sampleno from sample
where markupdate > '1/1/2010'
select sampleno, markupdate from sample
where markupdate > '1/1/2010'
select sampleno, markuptime from sample
where markupdate > '1/1/2010'
sampleno
并且markupdate
是索引字段(sampleno
是主键)
markuptime
未编入索引
查询 1 和 2 运行大约需要 1 秒(返回 237K 行)。3 分钟后查询 3 仍在运行。
为什么在 SELECT 子句中包含非索引字段会导致性能下降?
这是一个 SQL 6.5 数据库。