笔试题集八(SqlServer)

351. 写出一条Sql语句,取出表A中31至40的记录(SqlServer,以ID作为主键,注意:ID可能是不连续的)

SELECT TOP 10 * FROM A WHERE ID>(SELECT MAX(ID) FROM (SELECT TOP 30 ID FROM  A) AS A)
SELECT TOP 10 * FROM A WHERE ID NOT IN(SELECT TOP 30 ID FROM A)
WITH T AS(SELECT *,ROWNOM() AS num FROM A) WHERE  num>30 and num<=40

 

352. 如果想查询学分在60~90分之间的学生学分以及姓名,在学分上创建聚集索引是否合适?
    否,既然只输出两列,我们可以在学分和姓名上创建非聚集索引,此时索引形成索引覆盖,查询性能更好。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
posted @ 2019-05-02 19:02  NCat  阅读(363)  评论(0)    收藏  举报