计算机数据库中的索引有什么用

如题所述

主要作用就是提高检索速度

比如我们常用的查询语句
select * from tablename where column1 = 1
如果这张表中的column1没有做索引列
就会从所有数据库中依次遍历
找到结果集

如果为column1做了索引列
则就会在数据库中创建一个索引表
格式大概如下:
value -> physical data
1 -> aaa0001

就可以从索引表中直接找到对应的物理数据的地址
再直接从这个地址获取数据结果集
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-09-25
主要作用就是提高检索速度

数据库表中的时间字段是否可以建立索引?

可以建立索引的;至于建立聚集索引或者是非聚集索引,那要看你这个时间字段的具体情况以及使用或变更频繁程度。

一般来说,适合建立聚集索引的要求:“既不能绝大多数都相同,又不能只有极少数相同”的规则。

先说说一个误区:有人认为:只要建立索引就能显著提高查询速度。这个想法是很错误的。建立非聚集索引,确实,一般情况下可以提高速度,但是一般并不会达到你想要的速度。只有在适当的列建立适当的(聚集)索引,才能达到满意的效果。

下面的表总结了何时使用聚集索引或非聚集索引(很重要)。

动作描述 使用聚集索引 使用非聚集索引
列经常被分组排序 应 应
返回某范围内的数据 应 不应
一个或极少不同值 不应 不应
小数目的不同值 应 不应
大数目的不同值 不应 应
频繁更新的列 不应 应
外键列 应 应
主键列 应 应
频繁修改索引列 不应

别的就要看你的理解了。
第2个回答  2013-09-25
表的索引就相当于一本词典的目录, 这样查找的时候就可以迅速定位到需要的位置, 根本不必考虑前后的数据, 可以极大加快检索速度

比如:要检索table表field字段中所有等于"abc"的值

因为已经建立索引, 数据库系统会迅速找到a开头的记录, 而且可以保证, 在这条记录之前肯定没有符合的记录了, 因为已经是按顺序的了

如果没有索引, 就只能一条一条的比较
第3个回答  2013-09-25
数据库中的数据就像一个个人。
索引就像给每个人一个身份证号,方便其他人查询,极大的提高查询效率,但是在插入数据时效率会降低一些些。
相似回答