Article ID: 252733
Article Last Modified on 10/17/2003
APPLIES TO
- Microsoft SQL Server 7.0 Standard Edition
- Microsoft SQL Server 2000 Standard Edition
This article was previously published under Q252733
BUG #: 57350 (SQLBUG_70)
SYMPTOMS
Under certain conditions a query may issue a table scan instead of using a useful covering nonclustered index.
CAUSE
The optimizer is using the density information from the distribution page statistics to estimate the number of qualifying rows. In WHERE clauses with two or more constant values, the value of the constants can be estimated as too costly for using the index because the average density is worse than the density for these special constant values. This is the reason why the optimizer is not using the index.
WORKAROUND
To work around this problem, try either of the following:
- Use an index hint.
-or-
- Change the nonclustered index to a clustered index.
STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.
Additional query words: performance slow non-clustered
Keywords: kbbug kbpending KB252733