当前位置: 首页 > news >正文

mysql模糊查询优化

mysql模糊查询优化

一、合理使用索引

如下SQL举例:
SELECT username,age FROM WHERE username LIKE ‘hysen%’
如果username字段有索引,前缀匹配会走索引,如 ‘%hysen’或’%hysen%’ 则无法走索引。

二、使用反向索引

对于需要使用后缀匹配的情况(如:‘%hysen’或’%hysen%’ ),可以创建一个辅助列 用来存储反转字符串,并基于此列进行前缀匹配(如此则相对于非反转字符串的后缀匹配),以此来实现该需求

ALTER TABLE users ADD reversed_username VARCHAR(255);
UPDATE users SET reversed_username =REVERSE(username);
CREATE INDEX idx_reversed username ON users(reversed_username);

三、限制扫描范围

在LIKE查询中,如果可以通过其他条件进一步缩小查询范围,则尽量先缩小范围,再进行LIKE查询 如
SELECT username FROM users WHERE age >=‘18’ AND username LIKE
hysen%';

四、使用全文本搜索引擎

使用全文本搜索引擎:对于需要模糊匹配的查询,可以考虑使用全文本搜索引擎,如MySQL的全文本搜索功能或者Elasticsearch、Solr、Sphinx等,来提高查询效率


http://www.mrgr.cn/news/46981.html

相关文章:

  • Web开发(一)HTML5
  • Vue进阶之AI智能助手项目(二)——ChatGPT的调用和开发
  • llama.cpp 模型可视化工具 GGUF Visualizer
  • .Net Core Record 类型
  • 远程桌面软件比如说向日葵他们的原理是什么
  • 【Rust学习笔记】Rust 的所有权介绍
  • 数通--3
  • linux通过网络scp传文件
  • 2024最新版:大厂AI大模型面试题集锦及详解,非常详细收藏我这一篇就够了
  • 仿IOS桌面悬浮球(支持拖拽、自动吸附、自动改变透明度与点击、兼容PC端与移动端)
  • Umi中的微前端
  • 如何做好乡村文化传承与乡村经济发展
  • mmap和ioremmap解析
  • 揭秘地表水与地下水耦合的奥秘!基于QSWATMOD的SWAT-MODFLOW模拟
  • centos6.9不用安装光盘在控制台重置root密码
  • 安全工具 | 搭建带有 Web 仪表板的Interact.sh
  • 如何确保我的Java爬虫在获取Lazada商品详情时遵守API使用限制?
  • 前端的全栈之路:基于 Vue3 + Nest.js 全栈开发的后台应用
  • 美国亚马逊灯串UL588测试报告测试哪些内容
  • 知识付费对企业的帮助 知识付费的优势 知识服务服务 企业为什么一定要做知识付费
  • 【数据库】MySQL解决ONLY_FULL_GROUP_BY模式
  • 刷题 双指针 滑动窗口
  • 你能描述一下Java中的JDBC连接池吗?Java中的事务隔离级别有哪些?它们分别是什么?
  • 三菱FX5U-CCLINK IEFB网关HT3S-CIS-MDN读取七星华创CS310空气流量计数据应用案例
  • 骨传导耳机哪款好?2024年骨传导耳机推荐!好戴不伤耳~
  • 图像处理概述