关于索引那点事

MySQL 关于索引这一点事,MySQL索引

索引

其实数据库中的数据是按页存放的
实际上索引也是按页存放的
就此本质上索引也占硬盘空间(以细小的消耗,换取最大的便宜)

目录是一种有效整合数据的艺术!为急迅查找到内定记录做铺垫

目标就是急迅恐怕有些记录!
          提升了数据库的追寻速度!
作用:
大大提升数据库的检索速度
革新数据库品质

MySQL索引存款和储蓄类型分类
  01.B-树索引:InnoDB,MyISAM均支持
  0贰.哈希索引

骨子里索引是把双刃剑(利弊共存),假设使用不当,反而会下跌索引质量

主键:加速检索数据/唯1标记

常用索引类型:
   0壹.常备索引:允许在概念为索引的列中 出现 重复值和空值!
   0二.唯一索引:索引列不容许出现重复值,不过足以出现四个空值!
  
03.主键索引:创立主键的时候,系统会私下认可成立3个主键索引!唯1!不能够为空!
   0四.复合索引:将大家的五个列组合起来!(name,sid)姓名和身份证号!
  
05.全文索引:允许值的全文查询!允许空值和再度值!适合在三个剧情相比较多的列!text!
   0陆.空间索引:对空间数据类型的列建构的目录

 

■依据下列标准选用制造目录的列
频仍搜索的列
时一时用作查询选拔的列
每每排序、分组的列
,平常用作连接的列(主键/外键)
■请不要采用上面包车型地铁列成立索引
仅包蕴几个差异值的列
表中仅包蕴几行

 

Eg:

   —  查询内定表的目录
SHOW INDEX FROM student;
TABLE:索引所在的表
Non_unique:索引是还是不是唯一   0:唯1  一:不唯一
key_name:索引名称
seq_in_index:该列在目录中的地方
column_name:定义所用的列名称
null:该列是还是不是为空
index_type:索引类型   

—  给姓名扩展 普通索引
CREATE  INDEX index_studentName
ON student(studentName);

— 给学员姓名和身份证号 扩大 组合索引
CREATE INDEX index_name_sid
ON student(studentName,identityCard)

—  删除索引
DROP INDEX index_name_sid ON  student;

DROP  INDEX index_studentName ON  student;

 

—  创造索引的条件
  0一.日常被询问的列
  02.不常用作选用的列
  03.平时排序,分组的列
  0肆.常常用作连接的列(主键/外键)
 

 
利用索引时的注意事项:
  01.查询时收缩使用*重返全部的列,不要回来不需求的列!
  0二.索引尽量要少,在字节数小的列上创立目录!
 
0三.where字句中有多少个标准化表明式的时候,包括索引的列要放在别的表明式以前!
  0四.在order by的字句中防止采纳表明式!
 

关于索引那一点事,MySQL索引 索引
其实数据库中的数据是按页存放的 其实索引也是按页存放的
所以本质上索引也占硬盘空间(以细小的…

■依据下列规范选取创设目录的列
再三寻觅的列
时常用作查询选拔的列
不时排序、分组的列
,日常用作连接的列(主键/外键)
■请不要选择上面包车型地铁列创立索引
仅蕴涵多少个不一样值的列
表中仅包蕴几行

 --  查询指定表的索引
SHOW INDEX FROM student;
TABLE:索引所在的表
Non_unique:索引是否唯一   0:唯一  1:不唯一
key_name:索引名称
seq_in_index:该列在索引中的位置
column_name:定义所用的列名称
null:该列是否为空
index_type:索引类型    

--  给姓名增加 普通索引
CREATE  INDEX index_studentName 
ON student(studentName);
-- 给学生姓名和身份证号 增加 组合索引
CREATE INDEX index_name_sid
ON student(studentName,identityCard)

--  删除索引
DROP INDEX index_name_sid ON  student;
DROP  INDEX index_studentName ON  student;
 

索引

 

 

 

 

常用索引类型:
   0一.普普通通索引:允许在概念为索引的列中 出现 重复值和空值!
   0二.唯一索引:索引列不容许出现重复值,不过能够出现1个空值!
  
0三.主键索引:创设主键的时候,系统会默许创制四个主键索引!唯一!不能够为空!
   04.复合索引:将大家的多个列组合起来!(name,sid)姓名和身份证号!
  
0伍.全文索引:允许值的全文查询!允许空值和再度值!适合在一个剧情相比较多的列!text!
   06.空间索引:对空间数据类型的列建设构造的目录

目录是一种有效整合数据的方式!为急忙查找到钦点记录做铺垫

 

 

 
利用索引时的注意事项:
  0一.查询时减少使用*回去全体的列,不要回来不须求的列!
  0二.索引尽量要少,在字节数小的列上建立目录!
 
0叁.where字句中有两个规格表达式的时候,包蕴索引的列要放在其余表达式以前!
  0四.在order by的字句中制止使用表达式!

网站地图xml地图