mysql的几种索引

mysql索引的介绍可以mysql官网的词汇表中搜索:
https://dev.mysql.com/doc/refman/8.0/en/glossary.html

mysql可以在表的一列、或者多列上创建索引,索引的类型可以选择,如下:
在这里插入图片描述

普通索引(KEY)

普通索引可以提高查询效率。在表的一列、或者多列上创建索引。
每个表可以创建多个普通索引。
普通索引建议命名为:idx_字段名。

例如,下面示例,在price列上创建了一个普通索引。
在这里插入图片描述

唯一索引(unique index)

在表的一列、或者多列上创建唯一索引。如果是在一列上创建,那么该列的值在表中是唯一的;如果是在多列上创建,那么多列的组合值在表中是唯一的。允许出现NULL值。
在一个表上可以创建多个唯一索引。
唯一索引建议命名为:uk_字段名。

例如,下面示例,在表的type和pdate两列上创建了一个唯一索引。
在这里插入图片描述

主键(primary key)

在一列、或者多列上创建主键,用于唯一标识表中的一行数据。
主键首先必须是一个唯一索引,并且不能包含NULL 值。
在一个表上只能创建一个主键。
InnoDB存储引擎要求每个表有一个主键,也称为簇索引( clustered index 或者 cluster index)。基于主键列的值来组织表的存储。
主键索引的名字是PRIMARY KEY。

例如,下面示例,在表的自增长的id列上创建了主键:
在这里插入图片描述

全文索引(FULLTEXT index)

全文索引是一种特殊的索引,用于高效的全文检索。
最初,全文索引只能用于 MyISAM表,但从 MySQL 5.6.4开始,在InnoDB 表上也能使用了。
全文索引建议命名为:ft_字段名。

例如,下面示例中,在description列上创建了全文索引:
在这里插入图片描述

空间索引(SPATIAL index)

空间索引是一种用于多维信息数据的索引,多维数据如地理坐标、矩形、多边形。
空间索引使用R-tree结构。

支持index_type选项的存储引擎的索引特性

https://dev.mysql.com/doc/refman/8.0/en/create-index.html

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值