mysql的负向条件查询会不会使用索引

mysql的负向条件查询,例如not in,会不会使用索引?

其实,mysql还是会尽量利用索引。如果查询的列上有索引,并且索引能够覆盖查询所需的列,那么mysql可能会使用索引来获取结果,而不是进行全表扫描。

例如,执行语句explain select * from test_table where type not in ('login', 'register');查看执行计划,其中使用了负向条件not in:
在这里插入图片描述
从上面输出可以看出,这个负向查询还是使用了索引的。

执行语句explain select * from test_table where type in ('login', 'register');查看执行计划,其中使用正向条件in:
在这里插入图片描述
从输出可以看出,这个正向条件查询也使用了索引。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-14 15:38:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-14 15:38:03       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-14 15:38:03       82 阅读
  4. Python语言-面向对象

    2023-12-14 15:38:03       91 阅读

热门阅读

  1. 如何理解HTML下的网页结构?

    2023-12-14 15:38:03       72 阅读
  2. 文心一言4.0使用指南

    2023-12-14 15:38:03       69 阅读
  3. K8S学习指南(7)-k8s核心概念Annotation

    2023-12-14 15:38:03       66 阅读
  4. 大语言模型--能力

    2023-12-14 15:38:03       54 阅读
  5. Redis

    Redis

    2023-12-14 15:38:03      51 阅读
  6. canvas实现鼠标滚轮滚动缩放画布

    2023-12-14 15:38:03       64 阅读
  7. PHP 去除数组中元素值的前后空白符换行等

    2023-12-14 15:38:03       64 阅读
  8. C 库函数 - time()

    2023-12-14 15:38:03       67 阅读
  9. C++——STL标准模板库——容器详解——vector

    2023-12-14 15:38:03       45 阅读
  10. SQL游标详解

    2023-12-14 15:38:03       64 阅读
  11. PHP中如何进行异常处理?

    2023-12-14 15:38:03       63 阅读
  12. Netperf使用总结

    2023-12-14 15:38:03       52 阅读
  13. 主流机器学习框架及区别

    2023-12-14 15:38:03       73 阅读
  14. linux查看程序是否安装

    2023-12-14 15:38:03       62 阅读
  15. Linux C/C++并发编程实战(7)并发安全手段CAS机制

    2023-12-14 15:38:03       81 阅读
  16. 企业应用开发中.NET EF常用哪种模式?

    2023-12-14 15:38:03       72 阅读