生产环境一个like模糊匹配SQL优化
1
|
SELECT s.* FROM pre_common_member s WHERE s.`username` LIKE( '%植物大战僵尸%' ) LIMIT 100 ;
|
like后面接'%关键字%' 这样是用不到索引的,会导致全表扫描,这条SQL查询耗时,见下图:
----------------------------------------------------------------------------------------
优化方案:
一、如果模糊查询不要求很准确,可以修改为:
1
|
SELECT s.* FROM pre_common_member s WHERE s.`username` LIKE( '植物大战僵尸%' ) LIMIT 100 ;
|
like '关键字%'这样是可以用到索引的,这条SQL查询耗时,见下图:
二、如果模糊查询要求很准确,可以修改为:
1
2
3
|
select s.* FROM pre_common_member s join
(SELECT uid FROM pre_common_member WHERE username LIKE( '%植物大战僵尸%' ) LIMIT 100 )tmp
on s.uid=tmp.uid;
|
这条SQL查询耗时,见下图:
本文转自hcymysql51CTO博客,原文链接:http://blog.51cto.com/hcymysql/1365669 ,如需转载请自行联系原作者
生产环境一个like模糊匹配SQL优化相关推荐
- 生产环境慎用 redis 模糊匹配功能!
Redis是一个key-value存储系统.和Memcached类似,但性能远高于memcached.现在很多大型互联网公司都在使用redis作为自己的缓存实现,但是如果没有合理使用好redis,比如 ...
- java的for循环取出数据只是拿到最后一个_一问SQL优化就无从藏身?那只是你对原理的精髓掌握不深
曾几何时,我信誓旦旦的认为只要 SQL 写的好,面试过程永不倒.结果在一次又一次的征途中,「最终还是以完败落下帷幕」. 结果都源于注重使用而忽略原理,从而不知也不了解「SQL」优化应如何面对.读文的 ...
- 关于右模糊匹配的优化
第一思路写法是这样子的: select * from t1 where name like '%北' 但是B+树的算法不支持右模糊匹配,这样写的话会导致全表扫描,所以可以使用索引覆盖的原理,进行这样子 ...
- excel模糊匹配sql server数据库
假如数据库中已经有数据了 步骤1 在Excel表格中新建一页表格用于存储数据库的数据 步骤2 将待输入数据的表格与数据库关联 步骤3 在表格启动时,将表格与数据库进行关联 注意:一定要在ThisWor ...
- 笔记12 SQL优化
笔记12 性能与SQL优化 1.性能优化 复习一下什么是性能: DB/SQL 优化是业务系统性能优化的核心 2.关系数据库 MySQL 什么是关系数据库 数据库设计范式 常见关系数据库 SQL 语言 ...
- 文件服务器索引失效,SQL优化 MySQL版 – 避免索引失效原则(一)
避免索引失效原则(一) 精力有限,剩余的失效原则将会在 <避免索引失效原则(二)>中连载出来,请谅解 作者 : Stanley 罗昊 [转载请注明出处和署名,谢谢!] 避免索引失效的一些原 ...
- SQL优化最干货总结 - MySQL(2020最新版)
小伙伴想精准查找自己想看的MySQL文章?喏 → MySQL专栏目录 | 点击这里 前言 BATJTMD等大厂的面试难度越来越高,但无论从大厂还是到小公司,一直未变的一个重点就是对SQL优化经验的考察 ...
- Elasticsearch实战(十一)---前缀模糊匹配搜索 prefix search
Elasticsearch实战- 前缀模糊匹配搜索 prefix/wildcard/regexp search 文章目录 Elasticsearch实战- 前缀模糊匹配搜索 prefix/wildca ...
- SQL Server大负载的生产环境下的性能优化:初识元数据优化
相信朋友对SQL Server性能调优相关的知识或多或少都有一些了解.虽然说现在NOSQL相关的技术非常的火热,但是RMDB(关系型数据库)与NOSQL是并存的,并且适用在各种的项目中.在一般的企业级 ...
最新文章
- 第6章 I/O复用 select 和 poll 函数
- oracle x6-2能装2008吗,Sun服务器电源Oracle Server X6-2原装拆机7079395 600 AC
- mysql 目录武沛齐_MySQL数据表中的数据操作
- CSU-1982 小M的移动硬盘
- 如何 给给软件开发 添加 代理_如何与软件开发公司有效沟通
- @程序员,Web 开源神器了解一下? | 程序员硬核评测
- 三级IP地址的子网划分
- PHP7实战开发简单CMS内容管理系统(3) 引入后台首页
- 书籍-从Paxos到Zookeeper分布式一致性原理与实践
- 鸿蒙os framework,疯壳-鸿蒙OS-HDF驱动框架
- 怎样做小游戏挖金子(VC,源码3)
- 208个地级市总人口、城市和农村人口、城镇化率面板数据(2010-2019年)
- TopFormer 新的语义分割Transformer 结构
- 3D Motion Capture(3D运动捕捉)
- [React]网易云音乐Web PC端
- 对于GISer身份的思考
- 关于DSSD算法相关解析
- 如何系统地学习 C++ 语言?
- 【Unity】加载时 Newtonsoft.Json 提示 Metadata file `Newtonsoft.Json.dll` does not contain valid metadata
- 802.1X Radius 服务器搭建
热门文章
- android 换肤之style,android换肤总结
- mysql search yum_centos7通过yum安装mysql的方法
- elasticdump安装_elasticdump备份及恢复es数据
- swift_005(Swift的Dictionary 字典)
- android英文文献翻译,有关android技术英文文献翻译
- 【基本数据结构之'图'】
- LeetCode(72):编辑距离
- 【算法】均匀的生成圆内的随机点
- C#基础—不完整类型(局部类型)
- Happy birthday! Hubble