老师,我想问下,索引到底是什么?
来源:1-10 主键和唯一索引操作
China_Wang
2019-07-10 12:21:32
唯一索引和普通索引和主键索引都什么区别,分别有什么作用?
索引中的索引名称又有什么作用呢?
3回答
同学你好,
1、字段名称
2、索引名称查询不到数据,查询时就是使用字段名称,例如:id。
3、首先索引名称无法检索数据,查询数据时是通过表中的字段进行检索,例如以下语句中的where id=1
select * from where id=1;
为该字段创建索引后,再使用该字段进行检索效率要高的原因是:
没有为字段创建索引时,表中的数据没有特定的排列顺序,顺序就是随机无序的。
可以说,一张没有索引的数据表,就像一个只有书柜而没有索引卡片柜的图书馆,书库里面塞满了一堆乱七八糟的图书。当读者对管理员提交查询请求后,管理员就一头钻进书库,对照查找内容从头开始一架一柜的逐本查找。运气好的话,在第一个书架的第一本书就找到了,运气不好的话,要到最后一个书架的最后一本书才找到。
创建索引类似于为书柜创建了索引卡片,效率自然会变快呢~
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
好帮手慕阿满
2019-07-10
同学你好,索引相当于一本书的目录,如果给一个字段设置唯一索引,那么该字段的值是不能重复的。如果是主键索引,默认该字段是唯一并且不为空,还可以给主键字段设置自增。索引中的索引名称就是标识,一个索引对应一个索引名称,根据该索引名称可以找到该索引。
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
吃吃吃鱼的猫
2019-07-12
同学你好,这里给同学举个小例子:
如下图所示:

字段名称是id,category_id,name等上图标识的字段。
索引是为某一个字段上加上索引,使我们根据此字段查询时速度更快。
而索引名称就是为这个索引起一个名字。一般情况下,我们不会使用到索引名称。
例如:
ALTER TABLE `book` ADD INDEX index_name ( `id` )
这是为表book的id字段添加索引,索引名称是index_name。
在开发中,因为经常执行根据id字段查询数据,所以为id字段加上索引后,下面的查询查询语句速率就会提高。
select * from book where id=1;
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
相似问题