索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。
作用:加快查询速度,它能从根本上减少需要扫表的记录/行的数量。
假设有一张数据表Emplyee,该表有三列:
Employee_Name,Employee_Age,Employee_Address
表中有几万条记录。现在要执行下面这条查询语句,查找出所有名字叫“Jesus”的员工的详细信息
select * from Employee where Employee_Name = 'Jesus'
如果没有数据库索引功能,数据库系统会逐行的遍历整张表,对于每一行都要检查其Employee_Name字段是否等于“Jesus”。因为我们要查找所有名字为“Jesus”的员工,所以当我们发现了一条名字是“Jesus”的记录后,并不能停止继续查找,因为可能有其他员工也叫“Jesus”。这就意味着,对于表中的几万条记录,数据库每一条都要检查。这就是所谓的“全表扫描”( full table scan)
如何创建数据库索引。可以基于Employee表的两列创建索引即可:
create index Employee_Index on Employee(Employee_Name,Employee_Address)
网友评论