Mysql高级第一天(1)

索引分类:

一、索引的分类:

  1. B-tree索引:最常见的索引类型,大部分引擎都支持B树索引;
  2. Hash类型:只有Memory引擎支持,使用场景最简单;
  3. R-tree索引:空间索引,属于MyISAM的一种特殊索引类型,主要用于地理空间的数据类型,通常使用较少;
  4. Full-text索引:全文索引,也是MyISAM的一种特殊索引类型,主要用于全文索引,InnoDB从MySQL 5.6版本开始支持全文索引。

 

二、三种引擎对索引的支持情况:

  MyISAM InnoDB Memory
B-tree 支持 支持 支持
Hash 不支持 不支持 支持
R-tree 支持 不支持 不支持
Full-text 支持 Mysql5.6版本开始支持 不支持

 

 

 

 

 

三、索引分类:

单值索引:即一个索引只包含一个列,一张表可以有多个索引;

复合索引:即一个索引可以包含多个列;

唯一索引:即索引包含的列值必须唯一,但允许有空值。

 

四、索引语法:

1、创建:

create index idx_name on table_name('col_list');

 

2、查看:

show index from table_name;

 

3、删除:

drop index idx_name on table_name;

 

4、添加:

(1)主键索引:

alter table table_name add primary key ('col_list');

 

(2)唯一索引:

alter table table_name add unique idx_name('col_list');

 

(3)普通索引:

alter table table_name add index idx_name ('col_list');

 

(4)全文索引:

alter table table_name add fulltext idx_name ('col_list');

 

posted @ 2022-07-06 22:28  哆啦阿梦  阅读(19)  评论(0编辑  收藏  举报