1. 简介

排好序的快速查找数据结构。数据库还维护一个满足查找算法的数据结构,,这些数据结构以某种方式指向数据。
优点:
①提高检索效率,降低IO成本
②降低排序成本,降低CPU的消耗
劣势:
①占用内存
②更新表的速度满
③需要不断优化
分类:
①单值索引:一个索引只包含单个列,一个表可以有多个单值索引。
②唯一索引:索引列的值必须唯一,允许有空值
③复合索引:一个索引包含多个列。
2. 索引结构
B树(多路搜索树)索引(java开发);B+树索引;哈希索引;全文索引;R树索引
图片说明
Mysql索引对B+树进行优化,在原先基础上增加了叶子节点指向相邻叶子节点的指针,是为了增强区间访问性能
3. 基本语法
创建:create index idx_wx_name on wx(name);
删除:drop index idx_wx_name on wx;
查看索引:show index from wx;
哪些情况需要创建索引:
①主键自动建立唯一索引
②频繁作为查询条件的字段
③外键关系建立索引
④查询中的排序的字段
⑤查询中统计或者分组字段
不适合创建索引:
①频繁更新的字段
②用不到的字段
③重复出现的字段,索引选择性低