列上加索引时事有条件
admin
2023-05-22 17:02:51
0

在列上加索引时事有条件的:
1、经常被查询的列
2、order by子句中使用的列
3、是外键或者主键的列
4、列是唯一的列
5、两个或多个列经常同时出现在where子句中或者连接条件中


一般来说,应该在这些列上创建索引:

1经常需要搜索的列上,可以加快搜索的速度;

2在作为主键的列上,强制该列的唯一性和组织表中数据的排列结构;

3在经常用在连接的列上,这些列主要是一些外键,可以加快连接的速度;

4在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的;

5在经常需要排序的列上创建索引,因为索引已经排序,这样查询可以利用索引的排序,加快排序查询时间;

6在经常使用在WHERE子句中的列上面创建索引,加快条件的判断速度。


同样,对于有些列不应该创建索引。一般来说,不应该创建索引的的这些列具有下列特点:

第一,对于那些在查询中很少使用或者参考的列不应该创建索引。这是因为,既然这些列很少使用到,因此有索引或者无索引,并不能提高查询速度。相反,由于增加了索引,反而降低了系统的维护速度和增大了空间需求。

第二,对于那些只有很少数据值的列也不应该增加索引。这是因为,由于这些列的取值很少,例如人事表的性别列,在查询的结果中,结果集的数据行占了表中数据行的很大比例,即需要在表中搜索的数据行的比例很大。增加索引,并不能明显加快检索速度。

第三,对于那些定义为text, p_w_picpath和bit数据类型的列不应该增加索引。这是因为,这些列的数据量要么相当大,要么取值很少。

第四,当修改性能远远大于检索性能时,不应该创建索引。这是因为,修改性能和检索性能是互相矛盾的。当增加索引时,会提高检索性能,但是会降低修改性能。当减少索引时,会提高修改性能,降低检索性能。因此,当修改性能远远大于检索性能时,不应该创建索引。


根据数据库的功能,可以在数据库设计器中创建三种索引:唯一索引、主键索引和聚集索引

唯一索引 


唯一索引是不允许其中任何两行具有相同索引值的索引。

当现有数据中存在重复的键值时,大多数数据库不允许将新创建的唯一索引与表一起保存。数据库还可能防止添加将在表中创建重复键值的新数据。例如,如果在employee表中职员的姓(lname)上创建了唯一索引,则任何两个员工都不能同姓。主键索引数据库表经常有一列或列组合,其值唯一标识表中的每一行。该列称为表的主键。在数据库关系图中为表定义主键将自动创建主键索引,主键索引是唯一索引的特定类型。该索引要求主键中的每个值都唯一。当在查询中使用主键索引时,它还允许对数据的快速访问。聚集索引在聚集索引中,表中行的物理顺序与键值的逻辑(索引)顺序相同。一个表只能包含一个聚集索引。

如果某索引不是聚集索引,则表中行的物理顺序与键值的逻辑顺序不匹配。与非聚集索引相比,聚集索引通常提供更快的数据访问速度。



相关内容

热门资讯

上海交通大学通报学生瞒骗竞赛奖... 5月18日,上海交通大学国家电投智慧能源创新学院发布情况通报:近日,有同学反映我院一名学生在相关竞赛...
从中超球星到外卖骑手,邱忠辉和... 澎湃新闻记者 宋承良山东青岛李沧区工人文化宫对面的一家酒店咖啡厅,邱忠辉比约好的时间提前了10分钟来...
台湾问题优先,但美国扣得好第一... 【文/观察者网专栏作者 雁默】特朗普两手空空来中国,领了一张中文考卷回美国,考题是“如何扣好第一颗纽...
特稿|继往开来的重要时刻——俄... 新华社北京/莫斯科5月18日电 特稿|继往开来的重要时刻——俄罗斯各界期待两国元首外交引领中俄关系开...
商务部:结合能源转型,将出台针... 【大河财立方 记者 程帅星 北京报道】 深入推进汽车流通消费改革试点、出台针对11万座加油站转型的举...
底价近1亿元!安阳钢铁挂牌一子... 【大河财立方消息】 5月18日,安阳钢铁股份有限公司(证券简称:安阳钢铁)公告,收到河南中原产权交易...
2026数博会招展工作启动,申... 据中国国际大数据产业博览会(简称数博会)执委会消息,2026数博会招展工作已全面启动,全球大数据、人...
“逐日工程”研究取得重大进展 这是“逐日工程”空间太阳能电站地面验证系统(4月16日摄)。新华社发 新华社西安5月18...
撬动万亿级入境消费增量,离境退... 【大河财立方 记者 程帅星 北京报道】 国内商品,有望卖给更多境外游客。5月18日《关于加力优化离境...
文旅增长瞄准“沉浸体验” ——... 随着景区NPC业态的火爆升温,河南开封的文旅市场再添一波热度。这座历史文化名城没有抱着旅游资源“躺平...