mysql:用like进行模糊查询时尽量避免用通配符%开头

在mysql中,用like进行模糊查询,如果以通配符%开头,可能会使索引失效,所以应该尽量避免。

例如,执行explain select * from test_table where description like '%据';查看执行计划,其中模糊查询以通配符%开头:

从输出发现,查询没有用到索引。

执行explain select * from test_table where description like '数%';查看执行计划,其中模糊查询以通配符%结尾:

从输出可以看出,查询用到了索引。

执行explain select * from test_table where description like '%据%';查看执行计划,其中模糊查询的首尾都用到了通配符%:

从输出可以看出,查询没有用到索引。

相关推荐
虎虎(_ _)。゜zzZ15 小时前
Qdrant向量数据库工程实战
数据库·人工智能·大模型·向量数据库·rag·qdrant
ZGG00315 小时前
线程池详解:从 7 大参数到生产避坑
java·数据库·后端
龙亘川15 小时前
数智赋能退役军人服务:V1.0 系统搭建全生命周期闭环服务体系
大数据·数据库·人工智能
zhangguojia716 小时前
权限弹窗点击允许的授权流程
运维·服务器·数据库
jnrjian16 小时前
Postgres 序列(sequence)的权限
数据库·postgresql
风禾万里16 小时前
【无标题】
数据库
镜舟科技16 小时前
为什么 Text-to-SQL 总是停在 Demo?
数据库·sql·demo·text-to-sql·镜舟科技·mip·语义视图
人生苦短12816 小时前
Oracle RAC 日常管理+排错命令大全
数据库·oracle
镜舟科技16 小时前
从 DBA 经验到 Agent:镜舟如何构建生产级智能排障体系
数据库·agent·dba·skill·devops agent·mirrorship
瀚高PG实验室16 小时前
HAC 集群主节点状态在starting、running之间频繁切换
运维·数据库·postgresql·瀚高数据库