索引

作者: msjgodboy | 来源:发表于2018-03-12 17:05 被阅读0次

含义:索引是一种数据结构,可以理解为“排好序方便快速查找的数据结构”。

建立索引的优势:通过建立索引,可以加快数据的检索效率。

建立索引的劣势:降低对表的操作速度(如INSERT,UPDATE,DELETE),因为对表数据进行操作,数据库需要对索引进行优化;其次索引也要占磁盘空间,它需要记录实体表被指向的字段。

索引分类:单值索引,唯一索引,复合索引

基本语法:

创建索引:create index index_name on table_name(column...)

删除索引:drop index index_name on table_name

查看索引:show index from table_name

修改索引:alter table table_name add primary key(column):添加主键索引

                  alter table table_name add unique index_name(column...):添加唯一索引

                  alter table table_name add index_name(column...):添加普通索引

索引的优化

1:表中的主键需要建索引(默认创建)

2:需要频繁查询的字段

3:逻辑外键关系需要建索引

4:表记录太少不适合建索引

5:表的增删改操作频繁不适合建索引

6:mysql在使用不等于(!=或者<>)的时候无法使用索引导致全表扫描

7:is null, is not null也无法使用索引

8:like以通配符开头('%abc...')mysql索引失效会变成全表扫描的操作

9:字符串不加单引号索引失效

10:少用or,用它来连接会索引失效

11:不在索引列上做任何操作(计算,函数,(自动or手动)类型转换,会导致索引丢失转而全表扫描)

12:尽量使用覆盖索引(只访问索引的查询(索引和查询列一致)),减少select *

13:单键/组合索引的选择问题(高并发下倾向创建组合索引)

14:查询中排序的字段,排序的字段若通过索引去访问将大大提高排序速度

15:查询中排序的字段,排序的字段若通过索引去访问将大大提高排序速度

相关文章

  • MySQL索引

    MySQL索引 索引介绍 索引原理与分析 组合索引 索引失效分析 索引介绍 什么是索引索引:包括聚集索引、覆盖索引...

  • Mysql优化

    一.索引科普 主键索引 唯一索引 普通索引 单列索引 多列索引 聚簇索引 非聚簇索引 前缀索引 全文索引 二.优化...

  • Oracle 索引学习

    创建索引 标准语法 唯一索引 组合索引 反向键索引 示例 删除索引 修改索引 重建索引 联机重建索引 合并索引

  • MySQL索引

    索引的作用 查看索引 创建索引 删除索引 索引类型 强制索引和禁止某个索引

  • Pandas数据操作

    Pandas数据操作 Series索引 行索引 切片索引 不连续索引 布尔索引 DataFrame索引 列索引 不...

  • 深入理解四种数据库索引类型(- 唯一索引/非唯一索引 - 主键索

    唯一索引/非唯一索引 主键索引(主索引) 聚集索引/非聚集索引 组合索引 唯一索引/非唯一索引 唯一索引 1.唯一...

  • MYSQL索引

    mysql的4种常用索引类型:唯一索引,主键索引,全文索引,以及普通索引。 普通索引(INDEX):普通索引为索引...

  • 索引类型

    索引类型有: 主键索引; 唯一索引; 普通索引; 全文索引; 多列索引;

  • mysql 查询效率优化之 常用索引的几种类型 新手使用教程,少

    Mysql常见索引有:主键索引、唯一索引、普通索引、全文索引、组合索引(联合索引,多列索引) 一、建立的方法介绍 ...

  • MySql 数据查询优化

    1. MySQL索引类型: mysql的索引有5种:主键索引、普通索引、唯一索引、全文索引、聚合索引(多列索引)。...

网友评论

      本文标题:索引

      本文链接:https://www.haomeiwen.com/subject/eovnfftx.html