Mysql索引学习(10.26)

Mysql索引学习(10.26)

目的

提高查询效率,为列创建索引(快速定位)

索引是表,保存主键或索引字段,以及将记录指向实际表的指针

非聚簇索引:索引中保存字段值的地址

聚簇索引:索引中保存字段的值

索引分类

  • 唯一索引(一个表中可以有多个,不能出现相同值,可以有null)

  • 普通索引(允许出现相同的索引内容)

  • 主键索引(一个表中只可以有一个,不能出现相同的值)

  • 全文索引(可以针对值中的某个单词)

  • 组合索引(多个字段建在一个索引中,列值的组合必须唯一)

缺点

  • 降低更新表的速度(更新时,既保存数据又保存索引文件)

  • 占用磁盘空间的索引文件

技巧

索引中不含有null值

列中包含null,不会被包含在索引中

组合索引只要有一列为null,这一列对于组合索引就是无效的

使用短索引

串列索引,可以指定一个前缀长度(提高查询速度,节省磁盘空间,i/o操作)

如果前多个字符,多数值唯一,就不用对整列索引

like操作

不鼓励使用like操作,并且注意正确使用。

like '%aaa%'不会使用索引,而like 'aaa%'可以使用索引

猜你喜欢

转载自blog.csdn.net/m0_62261710/article/details/143259545