Mysql 索引

创建索引

// 语法
CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name [USING index_type] ON table_name (index_col_name,...)

// 实例
create unique index `username_unique` using btree on `users`(`username`);
create index `email_index` using btree on `users`(`email`);

create index `order_no_user_id_index` using btree on `order_detail`(`user_id`,`order_no`);

删除索引

ALTER TABLE table_name DROP INDEX index_name;

查看索引

show index from table_name;

这里简单介绍一下btree和hash索引的应用场景,hash索引底层数据结构是哈希表,单条数据查询时可以一次定位。而B-Tree索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问。
因此在绝大多数需求为单条记录时可以选择hash索引,查询性能最快,其余大部分场景建议使用btree索引。

posted @ 2019-11-15 16:13  家迪的家  阅读(205)  评论(0编辑  收藏  举报