
在创建索引时,为什么一般都是先创建聚集索引,后创建非聚集索引?
1个回答
关注

展开全部
非要较真,当然是聚集索引先创建的好,因为聚集索引影响数据的存储位置,如果建好非聚集索引,再建聚集索引,会自动调整非聚集索引的内容。
咨询记录 · 回答于2022-04-16
在创建索引时,为什么一般都是先创建聚集索引,后创建非聚集索引?
非要较真,当然是聚集索引先创建的好,因为聚集索引影响数据的存储位置,如果建好非聚集索引,再建聚集索引,会自动调整非聚集索引的内容。
已知对表S(Sno,Sname,Ssex,Sage,Major,Address,Mphone)已经插入了2万个元组,并且在Sno属性上已经创建了聚集索引,Sname属性上已经创建了非聚集索引,那么请问下列两个语句中哪一个语句的查询速度更快?为什么?并由此真正理解“回表操作”的含义。(1) SELECT * FROM S WHERE Sno='17001'(2) SELECT * FROM S WHERE Sname='王志平'
你也可以不创建。但是有索引在读取的时候会更快。但是插入的时候有可可能会变慢,这种现象得表中的数据到达一定级别的时候才会比较明显。聚集索引和非聚集索引不冲突。聚集索引只能有一个,非聚集可以有多个聚集索引是:将数据在物理上排序,比如,图书馆的的书,从编号1开始按数字,1,2,3,4,5这样一直排列下来,这里的 1,2,3,4,5就可以建立聚集索引,检索的时候假设你检索 >4的数据就很快。非聚集是索引是:将数据在逻辑上排序。比如图书馆的书,按照语音 将中文的放到 A区,将英文放在B区,然后又按照图书的类目,比如 文学类 放在 B曲区的 1号货架,历史图书放在B区的2号货架,这样逻辑上的排序是非聚集索引。手打,累。。。。这是最基本的。索引在表创建的时候有很大学问。我也是皮毛。自己深入研究吧
已赞过
评论
收起
你对这个回答的评价是?