20. 在SQL Server 2008中,设有商品表(商品号,商品名,生产日期,单价,类别)。现经常需要执行下列查询: SELECT 商品号, 商品名, 单价 FROM 商品表 WHERE 类别 IN ('食品','家电') ORDER BY 商品号 现需要在商品表上建立合适的索引来提高该查询的执行效率。下列建立索引的语句,最合适的是______。
A.CREATE INDEX Idx1 ON 商品表(类别)
B.CREATE INDEX Idx1 ON 商品表(商品号,商品名,单价)
C.CREATE INDEX Idx1 ON 商品表(类别,商品号,INCLUDE (商品名,单价)
D.CREATE INDEX Idx1 ON 商品表(商品号,INCLUDE (商品名,单价,WHERE 类别 = '食品' OR 类别 = '家电'
A B C D
D
[解析] 建立索引是加快查询速度的有效手段。在SQL语言中,建立索引使用CREATE INDEX语句,一般格式为: CREATE [UNIQUE] INDEX <索引名> ON <表名> (<列名>[<次序>],<列名>[<次序>],)INCLUDE (属性名)WHERE 约束条件 所以根据题意选D。
A.CREATE FUNCTION f_MaxSalary(@dept varchar(20)) RETURNS INT AS BEGIN RETURN (SELECT MAX(工资) FROM 职工表 WHERE 所在部门 = @dept) END
B.CREATE FUNCTION f_MaxSalary(@dept varchar(20)) RETURN INT AS BEGIN DECLARE @x INT SET @x = SELECT MAX(工资) FROM 职工表 WHERE 所在部门 = @dept RETURN (@x) END
C.CREATE FUNCTION f_MaxSalary(@dept varchar(20)) RETURNS INT AS BEGIN RETURN (SELECT MAX(工资) FROM 职工表 WHERE 所在部门 = @dept GROUP BY 姓名) END
D.CREATE FUNCTION f_MaxSalary(@dept varchar(20)) RETURNS INT AS BEGIN DECLARE @x INT SET @x = SELECT MAX(工资) FROM 职工表 WHERE 所在部门 = @dept ORDER BY 姓名 RETURN (@x) END