作者:KXIN

【重点】MySQL索引的原理?

MySQL有哪些索引方法? 在MySQL中,我们可以看到两种索引方式: B-Tree索引 Hash索引 实际场景下,我们基本仅仅使用B-Tree索引 对于Hash索引,我们了解即可,面试重点是掌握B-Tree索引的原理。 什么是B-Tree索引? B-Tree是为磁盘等外存储设备设计的一种平衡查找树

KXIN KXIN 发布于 2025-08-27

索引的数据结构

1. 为什么使用索引 假如给数据使用二叉树这样的数据结构进行存储,如下图所示 2. 索引及其优缺点

KXIN KXIN 发布于 2025-08-27

想知道一个查询用到了哪个索引,如何查找?

EXPLAIN显示了MySQL如何使用索引来处理SELECT语句以及连接表,可以帮助选择更好的索引和写出更优化的查询语句。 使用方法,在SELECT语句前加上EXPLAIN就可以了

KXIN KXIN 发布于 2025-07-30

索引创建问题

以下三条SQL如何建索引,只建一条怎么建? WHERE a = 1 AND b = 1 WHERE b = 1 WHERE b = 1 ORDER BY time DESC 以顺序b,a,time建立复合索引,CREATE INDEX table1_b_a_time ON index_test01(

KXIN KXIN 发布于 2025-07-30

【重点】MySQL索引的“使用”注意事项?

应尽量避免在WHERE子句中使用!=或<>操作符,否则引擎将放弃使用索引而进行全表扫描。优化器将无法通过索引来确认将要命中的行数,因此需要搜索该表所有行。 注意,column IS NULL也是不可以使用索引的。 应尽量避免在WHERE子句中使用OR来连接条件,否则将导致引擎放弃使用索引而进行全表扫

KXIN KXIN 发布于 2025-07-30

【重点】MySQL索引的“创建”原则?

最适合索引的列是出现在WHERE子句中的列,或连接子句中的列,而不是出现在SELECT关键字后的列。 索引列的基数越大,索引效果越好。 根据情况创建复合索引,复合索引可以提高查询效率。 因为复合索引的基数会更大。 索引基数(cardinality):索引中不重复的索引值的数量。 例如,某个数据列包含

KXIN KXIN 发布于 2025-07-30

【重点】什么是索引?

索引,类似于书籍的目录,想找到一本书的某个特定的主题,需要先找到书的目录,定位对应的页码。 MySQL中的存储引擎使用类似的方式进行查询,先去索引中查找对应的值,然后根据匹配的索引找到对应的数据行。 索引有什么好处? 提高数据的检索速度,降低数据库IO成本:使用索引的意义就是通过缩小表中需要查询的记

KXIN KXIN 发布于 2025-07-30

MySQL有哪些存储引擎?

MySQL提供了多种的存储引擎 InnoDB MyISAM MEG_MYISAM MEMORY CSV ARCHIVE BLACKHOLE PERFORMANCE_SCHEMA FEDERATED ... 如何选择合适

KXIN KXIN 发布于 2025-07-29