在SQL Server 2008数据库中存在销售单据明细表,其建表语句为: CREATE TABLE 销售单据明细表( 销售单据编号 varchar(8), 商品编号 varchar(8), 单价 money, 数量 int, 总价

admin2021-09-16  19

问题 在SQL Server 2008数据库中存在销售单据明细表,其建表语句为:
CREATE TABLE 销售单据明细表(
销售单据编号    varchar(8),
商品编号    varchar(8),
单价    money,
数量    int,
总价    money);
在系统运行一段时间后,此表中有近千万条数据,程序员在数据库中执行如下SQL语句:
SELECT 商品编号,sum(总价) FROM 销售单据明细表 WHERE 单价>50 GROUP BY 商品编号
为提高此查询的执行效率,需在此表中建立索引,请给出建立索引的方案。

选项

答案CREATE UNIQUE CLUSTERED INDEX ix_商品编号 on 销售单据明细表 (商品编号)

解析 本题考查的是索引相关知识,如索引定义,在什么地方建立索引,建立索引的条件等等,以及Active-Standby架构的数据库运行模式的机制。
索引的知识
索引技术是一种快速数据访问技术,它将一个文件的每个记录在某个或某些领域(或称为属性)上的取值与该记录的物理地址直接联系起来,提供了一种根据记录域的取值快速访问文件记录的机制。索引的使用要恰到好处,其使用原则一般如下:
①经常在查询中作为条件被使用的列,应为其建立索引;
②频繁进行排序或分组(即进行group by或order by操作)的列,应为其建立索引;
③一个列的值域很大时,应为其建立索引;
④如果待排序的列由多个,应在这些列上建立复合索引。
聚集索引是指数据库表行中数据的物理顺序与键值的逻辑(索引)顺序相同。一个表只能有一个聚集索引,因为一个表的物理顺序只有一种情况,所以,对应的聚集索引只能有一个。与非聚集索引相比,聚集索引有着更快的检索速度。聚集索引关键字Clustered Index,关键字unique表示唯一索引。建立UNIQUE CLUSTERED索引,使查询商品编号的数据记录唯一,降低了搜索范围,提高了搜索效率。
转载请注明原文地址:https://kaotiyun.com/show/PPeZ777K
0

相关试题推荐
最新回复(0)