MySQL索引
Mysql索引主要有两种结构:B+Tree索引和Hash索引
Mysql常见索引有:主键索引、唯一索引、普通索引、全文索引、组合索引
PRIMARY KEY(主键索引)
ALTER TABLE table_name
ADD PRIMARY KEY ( col
)
UNIQUE(唯一索引)
ALTER TABLE table_name
ADD UNIQUE (col
)
INDEX(普通索引)
CREATE INDEX indexName ON mytable(username(length));
ALTER TABLE table_name
ADD INDEX index_name (col
)
FULLTEXT(全文索引)
ALTER TABLE table_name
ADD FULLTEXT ( col
)
组合索引
ALTER TABLE table_name
ADD INDEX index_name (col1
, col2
, col3
)
Mysql各种索引区别:
普通索引:最基本的索引,没有任何限制
唯一索引:与”普通索引”类似,不同的就是:索引列的值必须唯一,但允许有空值。
主键索引:它 是一种特殊的唯一索引,不允许有空值。
全文索引:仅可用于 MyISAM 表,针对较大的数据,生成全文索引很耗时好空间。
组合索引:为了更多的提高mysql效率可建立组合索引,遵循”最左前缀“原则。创建复合索引时应该将最常用(频率)作限制条件的列放在最左边,依次递减。
mybatis对索引的应用
官方文档
参考文献:
Mysql索引介绍及常见索引的区别 - 北方寒士 - 博客园
MySQL ALTER命令 | 菜鸟教程
B+树比B树更适合做文件索引的原因 - 优快云博客