我们有一个包含超过 200 万行的表,其中所有针对它的查询都将是使用Column1
and的 Between 查找Column2
。此外,只有一种可能的结果。例如...
Col1 Col2
1 5
6 10
11 15
select * from table1 where 8 between Col1 and Col2
我目前在Col1
和上有一个唯一的聚集索引Col2
。到目前为止,我一直无法弄清楚如何进一步调整查询和索引以最小化处理的行。执行计划目前报告在找到唯一正确答案时处理的成本接近 0.5 和 113k 行。
我可能会忽略哪些选项?
根据要求,当前执行计划的一些细节:
Operation
Clustered Index Seek
Predicate
CONVERT_IMPLICIT(bigint,[@2],0)<=[Col2]
Seek Predicate
Seek Keys[1]: End: Col1 <= Scalar Operator(CONVERT_IMPLICIT(bigint,[@1],0))