索引的定义:
MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。
提取句子主干,就可以得到索引的本质:索引是数据结构。
通过索引,可以使我们更快地获得我们所需的数据。
Eg:原先搜索耗时:0.5s;使用索引后:0.000001s;
索引的作用:
- 提高查询速度
- 确保数据的唯一性
- 可以加速表和表之间的连接 , 实现表与表之间的参照完整性
- 使用分组和排序子句进行数据检索时 , 可以显著减少分组和排序的时间
- 全文检索字段进行搜索优化.
·主键索引:Primary Key
- 最常见的索引类型
- 确保数据记录的唯一性
- 确定特定数据记录在数据库中的位置
·唯一索引:Unique Key
- 主键索引只能有一个
- 唯一索引可能有多个
·常规索引:Key/Index
默认的,使用Index或者Key关键字来设置。
注意 :
- index 和 key 关键字都可以设置常规索引
- 应加在查询找条件的字段
- 不宜添加太多常规索引,影响数据的插入,删除和修改操作
·全文索引:FullTest
在特定的数据库引擎下才有,MyIsam。
作用 : 快速定位特定数据
注意 :
·只能用于MyISAM类型的数据表
·只能用于CHAR , VARCHAR , TEXT数据列类型
·适合大型数据集
索引在查询数据中的用途,在小数据中一般难以体现,我们创建一个百万数据的用户表来测试索引的效果。
(1)创建测试表格:
MySQL 5.5版本,需要注意:和 插入数据时,针对创建时间字段:在sql里now() 或者在代码里new date()更改后的sql,把默认值给个空,否则报错。
(2)插入百万条数据:
前两步执行结果:

(3)数据查询检验:
·查询数据总量:耗时14.032sec。

输出:

·查询特定数据的耗时:






·查询查找过程经历的数据量:
寻找了条数据后,才找到“用户7777”


·修改表格,增添索引:
创建索引的格式:create index 索引名 on 表名(加持字段)(注:索引的名字惯用格式:id _ 表名 _ 字段名)



索引在小数据中的用处不大,但是在大数据中效果很明显。
·索引不是越多越好
·不要对经常变动的数据加索引
·小数据量的表建议不要加索引
·索引一般应加在查找条件的字段
《mysql5.5 timestamp类型create_time和update_time更新时间》
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/4248.html