猿问

SQL中的索引是什么?

什么是指数在SQL中?你能解释或引用清楚吗?

我应该在哪里使用索引?


四季花海
浏览 1505回答 3
3回答

眼眸繁星

聚集索引就像电话簿的内容。你可以在“希尔迪奇,大卫”上打开这本书,找到所有“希尔迪奇”旁边的所有信息。在这里,聚集索引的键是(姓氏,名字)。这使得聚集索引非常适合根据基于范围的查询检索大量数据,因为所有数据都位于彼此之间。由于聚集索引实际上与数据的存储方式有关,因此每个表中只有一个可能的数据(尽管您可以通过欺骗来模拟多个聚集索引)。非聚集索引是不同的,因为您可以使用其中的许多索引,然后它们指向聚集索引中的数据。例如,你可以在电话簿的后面有一个非聚集索引,这个索引被输入(城镇,地址)。想象一下,如果你必须搜索电话簿中所有居住在“伦敦”的人-只有聚集索引,你就必须搜索电话簿中的每一项,因为聚集索引上的键是开的(姓、名),结果,居住在伦敦的人随机地分散在整个索引中。如果您在(城镇)上有一个非聚集索引,那么这些查询可以执行得更快。希望能帮上忙!

宝慕林4294392

一个很好的类比是把数据库索引看作是一本书中的索引。如果你有一本关于国家的书,而你正在寻找印度,那么你为什么要翻阅整本书-这相当于数据库术语中的完整表格扫描-当你只需浏览这本书后面的索引时,这本书就会告诉你可以在哪里找到印度信息的确切页面。类似地,由于图书索引包含页码,数据库索引包含指向行的指针,其中包含在SQL中搜索的值。
随时随地看视频慕课网APP
我要回答