
索引
文章平均质量分 94
数据库索引
来一杯龙舌兰
学识尚浅
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【笛卡尔积】深入理解笛卡尔积及其在SQL中的应用
笛卡尔积,或称为直积,是集合论中的一个基本概念。给定两个集合 ( A ) 和 ( B ),它们的笛卡尔积 ( A \times B ) 是一个包含所有可能的有序对的集合。形式化定义如下:例如,假设 ( A = {1, 2} ) 和 ( B = {x, y} ),那么 ( A \times B ) 将是:这个结果是所有可能的有序对组合,包含了每个元素的所有可能配对。原创 2024-08-26 09:50:56 · 3996 阅读 · 0 评论 -
数据库-索引(基础篇)
减少磁盘 I/O:索引通常存储在内存中,因此可以减少对磁盘的访问次数。当数据库引擎需要从磁盘读取数据时,如果使用了索引,它可以首先定位到索引中的位置,然后再读取相应的数据块,从而减少了磁盘I/O 操作的次数,提高了查询效率原创 2024-05-16 09:08:54 · 740 阅读 · 1 评论 -
数据库-索引结构(B-Tree,B+Tree,Hash,二叉树)
所以,在MySQL的索引结构中,并没有选择二叉树或者红黑树,而选择的是B+Tree,在原B+Tree的基础上,增加一个指向相邻叶子节点的链表指针,就形成了带有顺序指针的B+Tree,提高区间访问的性能,利于排序。上述是MySQL中所支持的所有的索引结构,接下来,我们再来看看不同的存储引擎对于索引结构的支持情况。上述是标准的B+Tree的数据结构,接下来,我们再来看看MySQL中优化之后的B+Tree。MySQL的索引是在存储引擎层实现的,不同的存储引擎有不同的索引结构,主要包含以下几种。原创 2024-05-16 09:30:45 · 1739 阅读 · 1 评论 -
数据库-索引语法(增删查)
CREATE [ UNIQUE | FULLTEXT ] INDEX index_name ON table_name ( index_col_name,... )原创 2024-05-17 08:31:39 · 1155 阅读 · 1 评论 -
数据库-索引分类(单列索引、复合索引、聚簇索引、二级索引)
在MySQL数据库,将索引的具体类型主要分为以下几类:主键索引、唯一索引、普通索引、全文索引。单列索引复合索引在MYSQL多列上创建的索引, 就是一个复合索引(组合索引)原创 2024-05-17 08:31:57 · 2138 阅读 · 1 评论 -
数据库-索引使用(验证索引效率、单列索引与联合索引、最左前缀法则)
我们发现只要联合索引最左边的字段 profession存在,索引就会生效,只不过索引的长度不同。但是查询时,跳过了age这个列,所以后面的列索引是不会使用的,也就是索引部分生效,所以索引的长度就是47。注意 : 最左前缀法则中指的最左边的列,是指在查询时,联合索引的最左边的字段(即是第一个字段)必须存在,与我们编写SQL时,条件编写的先后顺序无关。此时,查询时,就走了联合索引,而在联合索引中包含 phone、name的信息,在叶子节点下挂的是对应的主键id,所以查询是无需回表查询的。原创 2024-05-18 13:02:00 · 1476 阅读 · 0 评论 -
数据库-索引使用(索引失效情况)
因为MySQL在查询时,会评估使用索引的效率与走全表扫描的效率,如果走全表扫描更快,则放弃索引,走全表扫描。由于下面查询语句中,都是根据profession字段查询,符合最左前缀法则,联合索引是可以生效的,我们主要看一下,模糊查询时,%加在关键字之前,和加在关键字之后的影响。经过上面两组示例,我们会明显的发现,如果字符串不加单引号,对于查询结果,没什么影响,但是数据库存在隐式类型转换,索引将失效。当范围查询使用>= 或原创 2024-05-18 14:34:21 · 1552 阅读 · 0 评论