Many DBAs have faced with execution plans where it was an index seek for many days suddenly it became an index scan. (or vice versa). So when and how SQL Server decides what to use? (I am not talking about re-writing the query in different way so that the execution plan can get changed. it is the same query suddenly gets a new execution plan.)
SQL Server keeps statistics to determine the best method. When the data requested is beyond a particular percentage, the decision to scan is taken.
Interesting? Kimberly L. Tripp a great speaker, trainer and writer in SQL Server gives some more information: