在使用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语句使用了索引,搜索的效率大大的提高了!
本文标题为:mysql基本语法之like查询介绍
- MySQL删除存储过程(DROP PROCEDURE)方法详解 2024-02-15
- MariaDB Spider 数据库分库分表实践记录 2023-07-24
- Python的Flask框架使用Redis做数据缓存的配置方法 2024-03-10
- 详细讲解PostgreSQL中的全文搜索的用法 2023-12-19
- 一个小时学会MySQL数据库(张果) 2023-12-21
- Redis 分片集群的实现 2023-07-12
- Redis MIGRATE命令 2024-02-22
- MYSQL 增加从库方式介绍 2022-10-23
- SQL Server数据库判断最近一次的备份执行结果(最新推荐) 2023-07-29
- Python3.7 pyodbc完美配置访问access数据库 2023-12-04