7.联合索引(最左前缀原则)

联合索引是指对多个列进行的索引,遵循最左前缀原则,即查询时最左边的列必须作为过滤条件。它允许在特定场景下减少排序操作,如按组合键值排序。在查询时,优化器会根据具体条件选择单列索引或联合索引。
摘要由CSDN通过智能技术生成

1)什么是联合索引?

联合索引指的是对一张表上的多个列进行索引。也就是说,表上多个列加起来组成一个索引,供快速查询使用。

2)如何使用联合索引?

首先,给表添加索引
创建表时给表添加:

CREATE TABLE t(
    a int,
    b int,
    primary key(a),
    key idx_a_b(a,b)
)

创建表后给表添加:

CREATE TABLE t(
    a int,
    b int,
    primary key(a)
)

给表添加索引语句:

ALTER TABLE t ADD INDEX indx_a_b(a,b);

然后进行使用该联合索引进行查询,在此之前,我们需要学习联合索引的最左前缀原则。
最左前缀原则规定了联合索引在何种查询中才能生效,规则如下:
如果想使用联合索引,联合索引的最左边的列必须作为过滤条件,否则联合索引不会生效。
这也就是说,联合索引其实拥有单列索引的作用。
下面我们给上表t插入数据,学习联合索引如何正确使用:

insert into t(a,b) values(1,4);
insert into t(a,b) values(2,5);
insert into t(a,b) values(3,6);

最左前缀原则实验:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值