mysql一般索引和主键索引查询速度一样吗

主键索引会更快!原因是聚簇!
mysql一般索引和主键索引查询速度一样吗
主键索引速度相对要快些,2014-06-17
主键/聚集 索引:
该索引中键值的逻辑顺序决定了表中相应行的物理顺序。
如果用 新华字典 作例子来一个例子的话。
[拼音]就可以看作是聚集索引
例如 吖、阿、啊 在字典的最前面。
左、作、坐 在字典的最后面。
拼音[逻辑顺序]很接近,在字典中页数的位置[物理顺序]也很接近。
适用场合:
含有大量非重复值的列
使用BETWEEN,>,>=,<或<=返回一个范围值的列
被连续访问的列
返回大型结果集的查询
经常被使用连接或GROUP BY子句的查询访问的列

普通/非聚集 索引:
非聚集索引与聚集索引一样有 B 树结构,但是有两个重大差别:
数据行不按非聚集索引键的顺序排序和存储。
非聚集索引的叶层不包含数据页。
相反,叶节点包含索引行。每个索引行包含非聚集键值以及一个或多个行定位器,
这些行定位器指向有该键值的数据行(如果索引不唯一,则可能是多行)。
如果用 新华字典 作例子来一个例子的话。
[笔画]就可以看作是非聚集索引
例如 化 仇 仃 仅 仂 这几个字,都是 单人旁,笔画数相同的。
笔画[逻辑顺序]很接近,在字典中页数的位置[物理顺序]则在不同的位置上。
适用场合:
含有大量非重复值的列
非连续访问的列
返回小型结果集的查询

快不快, 要看适用场合的.2014-06-17
主键索引会更快!原因是聚簇!2014-06-17
这两个都是索引的一种形式,主键索引速度相对要快些,

参考资料:2014-06-17
mengvlog 阅读 9 次 更新于 2025-07-19 23:16:09 我来答关注问题0
  •  文暄生活科普 彻底搞懂MySQL的主键索引、普通索引和联合索引

    例1:为name创建索引之前 例2:为name创建索引之后 例3:根据主键id进行查询 可以看到,创建索引之前搜索name为蝉沐风的记录花费时间为0.96秒,为name字段创建索引后,搜索时间仅为0.03秒,可见索引的作用之大。但是我们没有显式为主键创建索引,为什么主键查询也这么快?我在上一篇文章中解释了主键查询...

  • MySQL 的四种常见索引类型为普通索引、唯一索引、主键索引和全文索引,以下为你展开介绍:普通索引:这是最基本的索引类型,没有任何限制,主要用于提升查询速度。在创建表时可以直接声明,也能在已有表上使用 ALTER TABLE 或 CREATE INDEX 语句创建。比如在 book 表的 book_name 字段上建立普通索引,能加...

  •  翡希信息咨询 【Mysql】Mysql中索引类型有哪些

    MySQL中索引的类型主要有以下几种:普通索引:适用于where、order by和group by等查询操作。通过单字段索引加快查询速度。创建和更新索引时会降低表的写入效率。唯一索引:确保字段数据的唯一性。可以有多个null值。创建时需注意查询顺序对效率的影响。主键索引:特殊类型的唯一索引。一个表仅能有一个主键索...

  •  翡希信息咨询 MySQL的普通索引和唯一索引到底什么区别?

    普通索引:允许索引的值在表中重复。它主要用于提升查询效率,但不具备验证数据唯一性的功能。唯一索引:保证索引的值在表中唯一,不允许重复。这常用于需要确保数据唯一性的场景,如身份证号、邮箱地址等。主键索引与唯一索引的关系:主键索引是特殊的唯一索引,每个表只能有一个,且不能为空。唯一索引可...

  •  翡希信息咨询 MySQL 常见索引类型介绍

    MySQL 常见索引类型主要包括以下几种:聚簇索引:特点:索引与数据存放在一起,找到索引的同时也找到了数据。唯一性:具有唯一性,一张表只有一个聚簇索引。默认情况:默认情况下,聚簇索引是主键;若表未定义主键,InnoDB 会选择一个非空唯一索引代替;否则会定义一个隐藏的_rowid 列作为聚簇索引。非...

檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部