MySQL like查询使用索引
2024-08-31 06:52:45
在使用msyql进行模糊查询的时候,很自然的会用到like语句,通常情况下,在数据量小的时候,不容易看出查询的效率,但在数据量达到百万级,千万级的时候,查询的效率就很容易显现出来。这个时候查询的效率就显得很重要!
结论:后置百分号可以用到索引,前置百分号和两侧百分号用不了索引。
like 匹配/模糊匹配,会与 % 和 _ 结合使用。
'%a' //以a结尾的数据
'a%' //以a开头的数据
'%a%' //含有a的数据
'_a_' //三位且中间字母是a的
'_a' //两位且结尾字母是a的
'a_' //两位且开头字母是a的
一般情况下like模糊查询的写法为(field已建立索引):
SELECT column FROM table WHERE field like '%keyword%';
上面的语句用explain解释来看,SQL语句并未用到索引,而且是全表搜索,如果在数据量超大的时候,可想而知最后的效率会是这样
对比下面的写法:
SELECT column FROM table WHERE field like 'keyword%';
这样的写法用explain解释看到,SQL语句使用了索引,搜索的效率大大的提高了!
explain详解:https://www.cnblogs.com/xuanzhi201111/p/4175635.html
参考链接:https://cloud.tencent.com/developer/article/1414594
最新文章
- [LeetCode] 3Sum 三数之和
- HTML5商城开发二 通过位移实现拖动效果
- 用 C# 在 Windows 7 中写注册表想到的
- VxWorks 6.9 内核编程指导之读书笔记 -- POSIX
- We Recommend a Singular Value Decomposition
- (转载)Java 1.7的新特性
- css background-position:x% y%
- js堆栈溢出错误
- 实现jsp页面显示用户登录信息,利用session保存。
- Linux自动安装JDK的shell脚本
- bzoj 2821 作诗 分块
- Docker 学习4 Docker容器虚拟化网络概述
- 你不可不知的Java引用类型之——SoftReference源码详解
- 【转】Linux C下非特定波特率的配置和使用
- P2P原理(转)
- latex表格代码
- UVA548-Tree(二叉树数组表示)
- python 基础数据类型之list
- 绑定域名到JavaWeb项目,由域名直接访问到网站首页
- 【Qt】仿QQ表情选择控件