问答题 有学生表(学号,姓名,年龄,性别,系名,专业名,班号),设一个系可有多个专业,每个专业可有多个班,各班班号不重复,一个学生只在一个班学习。现经常需要按“系名”和“班号”进行查询,为提高查询效率,需要为“系名”和“班号”两个列建立一个非聚集索引。建立此索引有下列两种方法:
方法1:索引列顺序为(班号,系名)。
方法2:索引列顺序为(系名,班号)。

问答题 这两种方法哪个更合理?请简要说明原因。
【正确答案】方法2更加合理。理由有3个:其一,更加有利于减少索引层次,提高查询效率。从索引物理结构上来讲,索引常常为B+树结构。而“系”的数量肯定要少于“班”的数量,那么先在小数量范围内搜索,然后在大范围内搜索,正好满足多层索引的B+树结构,使索引的层次较少,有利于提高查找效率。其二,更加符合使用习惯。一般查询时喜欢从大到小的范围。其三,更加便于以系、班进行统计。
【答案解析】[解析] 本题主要考查各种索引方法的选择和多个索引项的选择顺序问题,针对不同的问题应该根据具体的语义以提高效率为目的。
问答题 针对你认为合理的方法,写出创建该索引的SQL语句。
【正确答案】Create index i_index_1 on学生表(系名,班号)
【答案解析】