索引:一个排序好的数据,索引记录了添加索引的位置与数据表中的数据中每行记录之间的一 一对应的关系。
索引类似于词典中的目录一样。
mysql遍历数据的方式:
顺序遍历:查询会遍历数据库中的数据
索引遍历:找到合适的索引,然后根据索引定位到数据库的对应行的数据,提高数据查询能力
索引优缺点:
优点
- 所有字段都可以添加索引
- 可以为表中一列或者多列添加索引
缺点
- 索引需要占有一定位置,数据更新也需要mysql内部对索引进行内部维护
mysql索引的创建原则
- 数据越小越好,占用的内存越少
- 使用简单的数据类型最好
- 尽量不要在null值创建索引,null值会使索引计算更加难
mysql数据索引在数据中主键或者外键添加索引,表中数据有一定量,此字段多用于数据检索条件、此字段用于分组和排序。
索引的类型
唯一索引(unique)、全文索引(fulltext)、空间索引(spatial)
索引创建
alter table tableName add index indexName(columnName)