数据库的操做,选择,修改,删除。对于数据量大或者有性能要求时,都须要优化咱们的操做,其中一个操做就是创建索引,在数据库表的某列或者某几列上面创建索引。数据库
例如 表information:数据结构
name age sex address ……性能
查询某个姓名为“Nommy”的信息,若是该表有几千行,则需每行遍历查找数据,直至最后一行,效率不高,没有目的,甚至姓名不是主键可能存在多行姓名为Nommy状况,那么必需要遍历每一行完成为止。,,即全表扫描优化
引用过来数据结构中的B树,索引的列元素按照有序排列,很是方便查找某一条件,好比age索引,age<40,对吧,指针
这种索引的查找相等效率超级高,好比按照名字索引,按照名字查找某一我的的信息。,可是条件查询的话也就不方便了。orm
适合包含布尔值得列上,索引
数据库中,数据库已会自动建立索引提高性能。但也能够本身建立,可本身选择方式,那些列等。io
CREATE INDEX name_index form
ON information(name)效率
表中定义主键约束或者惟一约束等,自动建立索引
索引存储列值数据结构,使得查找更快。同时对于该项数据其余列的元素,经过指针指向。速度快,也能够访问该元组其余元素的值,非常方便
索引也是要占空间的,仅当须要的适合,创建合适的索引,才是最重要的