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:

从输出可以看出,这个正向条件查询也使用了索引。

相关推荐
znnnk4 小时前
数据库被AI“重写”:2026,从CPU中心走向GPU中心
数据库·人工智能·oracle
微微%4 小时前
mysql的安装和使用
数据库·mysql·mysql8安装
软件派6 小时前
MiniMax M3.1 Flash 高频业务落地实战指南
大数据·数据库·人工智能
云边云科技_云网融合6 小时前
连锁门店组网怎么做?SD-WAN 多分支组网的架构选型、部署与成本结构
服务器·数据库·php
泡海椒6 小时前
# 深度解析JQuick-SQL Join重排序与哈希连接执行机制
数据库·sql·哈希算法
acrel77 小时前
医院用电隐患治理与节能降耗及智慧能源平台应用
网络·数据库
snow@li7 小时前
PowerDesigner 全景教程:从业务建模、表结构设计、关系管理到正向/逆向、文档输出
数据库
ss2737 小时前
PostgreSQL表级锁、行级锁、轻量级锁
数据库·postgresql·区块链
RacentCLM8 小时前
证书即服务CaaS:从申请、续期到部署的自动化链路拆解
运维·数据库·自动化·ssl
SelectDB8 小时前
安全评审卡了三周,我把部署形态的四种选项重新排了一遍
大数据·数据库·云原生