Mysql覆盖索引和前缀索引的实战

 更新时间:2024年07月29日 08:42:06   作者:如果决定要走又何必挽留  
SQL是优化数据库的一个重要手段,本文主要介绍了Mysql覆盖索引和前缀索引的实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一.SQL提示        

SQL提示,是优化数据库的一个重要手段,简单来说,就是在SQL语句加入一些人为的提示来达到

二.覆盖索引

尽量使用覆盖索引(查询使用了索引,并且需要返回的列,在该索引中已经全部能够找到),减少select*

知识小贴士:

using index condition :查找使用了索引,但是需要回表查询数据
using where;using index:查找使用了索引,但是需要的数据都在索引列中能找到,所以不需要回表查询数据

三.前缀索引

当字段类型为字符串(varchar,text等)时,有时候需要索引很长的字符串,这会让索引变得很大,查询时,浪费大量的磁盘IO,影响查询效率。此时可以只将字符串的一部分前缀,建立索引,这样可以大大节约索引空间,从而提高索引效率

语法

create index idx_XXXX  on table_name(column(n));

前缀长度

可以根据索引的选择性决定,而选择性是指不重复性的索引值

前缀索引的查询流程

id是主键

在eamil前五个字符构建一个前缀索引

到此这篇关于Mysql 覆盖索引和前缀索引的实战的文章就介绍到这了,更多相关Mysql覆盖索引和前缀索引内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL笔记之子查询使用介绍

    MySQL笔记之子查询使用介绍

    子查询是将一个查询语句嵌套在另一个查询语句中,内层查询语句的查询结果,可以为外层查询语句提供查询条件
    2013-05-05
  • 一文弄懂MySQL索引创建原则

    一文弄懂MySQL索引创建原则

    在关键字段的索引上建与不建索引,查询速度相差近100倍,但差的索引和没有索引效果一样,索引并非越多越好,因为维护索引需要成本,下面这篇文章主要给大家介绍了关于MySQL索引创建原则的相关资料,需要的朋友可以参考下
    2022-02-02
  • Linux系统中MySQL的常用操作命令

    Linux系统中MySQL的常用操作命令

    本文给大家汇总介绍了下载Linux系统中操作mysql的一些常用的命令,非常实用,有需要的小伙伴可以参考下
    2018-02-02
  • 为什么MySQL数据库索引选择使用B+树?

    为什么MySQL数据库索引选择使用B+树?

    今天小编就为大家分享一篇关于为什么MySQL数据库索引选择使用B+树?,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • MySQL UNION操作符基础知识点

    MySQL UNION操作符基础知识点

    在本文里小编给大家整理了关于MySQL UNION操作符的相关知识点内容,需要的朋友们跟着学习下。
    2019-02-02
  • mysql无法启动服务及其他问题总结

    mysql无法启动服务及其他问题总结

    MySQL无法启动,可能有多种原因导致,本文主要介绍了mysql无法启动服务及其他问题总结,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • Mysql表连接的误区与原理详析

    Mysql表连接的误区与原理详析

    在使用MySQL数据库过程中,left join 基本是必用的语法,下面这篇文章主要给大家介绍了关于Mysql表连接的误区与原理的相关资料,需要的朋友可以参考下
    2022-09-09
  • MySQL中如何求平均值常见实例(AVG函数详解)

    MySQL中如何求平均值常见实例(AVG函数详解)

    MySQL avg()是一个聚合函数,用于返回各种记录中表达式的平均值,这篇文章主要介绍了MySQL中用AVG函数如何求平均值的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-11-11
  • MySQL 密码增强插件

    MySQL 密码增强插件

    这篇文章主要介绍了MySQL 密码增强插件的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • Mac os 解决无法使用localhost连接mysql问题

    Mac os 解决无法使用localhost连接mysql问题

    今天在mac上搭建好了php的环境,把先前在window、linux下运行良好的程序放在mac上,居然出现访问不了数据库,数据库连接的host用的是localhost,可以确认数据库配置是正确的,下面特为大家分享下
    2014-05-05

最新评论