美文网首页
mysql索引二

mysql索引二

作者: 酷酷的美猴王 | 来源:发表于2021-02-02 16:54 被阅读0次

1、什么是索引?

索引是帮助数据库高效获取数据的数据结构。

2、索引的引用层次划分

  • 唯一索引:索引列的值必须唯一,但允许有空值。
  • 复合索引:一个索引包含多个列。
  • 普通索引:即一个索引只包含单个列,一个表可以有多个单列索引。

3、如何添加索引

3.1主键索引

ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )

3.2唯一索引

ALTER TABLE `table_name` ADD UNIQUE (`column`)

3.3 普通索引

ALTER TABLE `table_name` ADD INDEX index_name (`column` )

3.4 多列索引

ALTER TABLE `table_name` ADD INDEX index_name (`column1`,`column2`,`column3`)

4、注意事项

4.1、sql语句将可过滤掉最多数据的字段放前面

比如,user表数据有1000w条,现在要查询男生(sex=1)&20岁(age=20) 的数据有多少,sql查询where 条件应该是 age=20 and sex=1

4.2、like语句 'xx%'索引有效;'%xx'索引失效

4.3、联合索引要符合最左匹配原则

例如:
user表 联合索引 name - age
sql语句where 条件
name='张三' and age=20 索引有效
age=20 and name='张三' 索引失效

4.4、使用不等于(!= 、<>)索引失效

例如:select name from user where age != 20 索引失效

4.5、字符串不用单引号索引失效

例如:
select id from user where name=张三; 索引失效
select id from user where name='张三'; 索引有效

4.6、or连接索引失效

例如:select id from user where name='张三' or name='李四' 索引失效

4.7、order by、group by 索引失效

4.8、索引列计算或用函数 索引失效

5、一条sql语句如何执行

image.png

相关文章

  • mysql索引总结----mysql 索引类型以及创建(转载)

    一、索引 MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度 二、索引的...

  • MySQL索引及查询优化书目录

    MySQL索引的原理之索引目的 MySQL索引的原理之索引原理 MySQL索引的原理之索引的类型 MySQL索引的...

  • MySQL索引和explain

    一,MySQL中的索引 二,explain

  • mysql

    一 mysql基础 二 mysql索引 什么是索引 索引是一种数据结构,解决查询语句中where和order by...

  • 高性能的索引策略

    MySQL查询基础-查询执行过程 MySQL聚簇索引 MySQL覆盖索引 MySQL索引扫描排序 MySQL冗余和...

  • 99 MySQL性能实战优化

    mysql 性能优化 一 MySQL架构与执行流程原理 二 MySQL 索引底层实现原理 三 MYSQL事务...

  • MySQL,必须掌握的6个知识点

    目录 一、索引B+ Tree 原理 MySQL 索引 索引优化 索引的优点 索引的使用条件 二、查询性能优化使用 ...

  • Mysql索引不会怎么办?6000字长文教会你

    MySQL的索引入门真的很难吗 MySQL的索引入门真的很难吗索引存在的意义索引的类型哈希索引二叉树跳表B+Tre...

  • MySQL索引的使用

    MySQL索引 MySQL索引可以快速提高MySQL的检索速度。索引分单列索引和组合索引单列索引:即一个索引只包含...

  • Mysql的原理解析

    文章目录 一、mysql数据结构 二、mysql 三层架构 三、聚集索引和非聚集索引 四、为什么使用索引可以提高查...

网友评论

      本文标题:mysql索引二

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