SQL Server学习笔记——索引

Posted Aiden_Zhao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server学习笔记——索引相关的知识,希望对你有一定的参考价值。

SQL Server学习笔记——索引

索引的定义:索引是对数据库表中的一列或者多列值进行排序的一种结构。

目的:加快查询速度。

但是,创建索引会占用一定的空间,且需要更新和维护

不适合创建索引的情况

  • 频繁更新的字段或者经常增删改的表,不适合创建索引;
  • 表的记录太少,不需要创建索引;
  • 如果某些数据包含大量重复数据,建立索引就没有太大的效果,例如性别字段,之后男(1)女(0),不适合建立索引。

聚集索引:数据行的物理顺序与列值(一般是主键那一列)的逻辑顺序相同,一个表中只能拥有一个聚集索引。SQL Server默认主键为聚集索引
非聚集索引:数据行的物理顺序与列值的逻辑顺序可能不同,一个表中可以拥有一个或多个非聚集索引。

1. sc表按学号升序和课程号降序建唯一索引

--index;索引  unique index:唯一索引
--asc:升序  desc:降序
create unique index scno on sc (sno asc, cno desc)

可见,在sc表中已经建立索引:

2. 删除索引

drop index scno on sc

执行之后便可删除刚才建立的scno:

以上是关于SQL Server学习笔记——索引的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server学习笔记——索引

SQL Server学习笔记——索引

SQL Server物化视图学习笔记

你可能不知道SQL Server索引列的升序和降序带来的性能问题

SQL Server学习笔记——order聚集函数group

SQL Server学习笔记——order聚集函数group