学堂 学堂 学堂公众号手机端

SqlServer索引失效的情况有哪些

lewis 3年前 (2022-10-12) 阅读数 2 #技术

  1. 表数据量过小或者分布不均匀,导致SQL Server查询优化器认为使用索引扫描的代价大于全表扫描,从而选择全表扫描而不是使用索引。

  2. 索引列上的数据不均匀,比如索引列上存在大量重复值的情况,会导致查询优化器认为使用索引扫描的代价较大。

  3. 索引列上存在大量NULL值,如果查询条件中包含了NULL值,那么索引就无法起到作用。


  4. 索引列上的数据类型不一致,比如在索引列上使用了函数或者类型转换,这样会导致索引无法被使用。

  5. 查询条件中包含了不等于(!=)或者不包含(NOT IN)等操作符,这些操作符会导致索引失效。

  6. 查询条件中使用了函数或者类型转换,这样会导致无法使用索引。

  7. 索引列上存在大量重复值,如果查询条件中包含了重复值,那么索引就无法起到作用。

版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门