首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

请问一SQL语句

2012-01-09 
请教一SQL语句做练习题时遇到的一问题:有张考试成绩表ExamTab(idintnotnull,sexchar(4)notnullnamechar(20

请教一SQL语句
做练习题时遇到的一问题:
有张考试成绩表ExamTab  

        id   int   not   null,
        sex   char(4)   not   null
        name   char(20)   not   null
        score   int   not   null
  )
请问:如何查询出成绩倒4差的考生的姓名以及成绩。

[解决办法]
declare @t table(id int, sex varchar(20), name varchar(20), score int)
insert @t select
1001, 'F ', 'aa ' , 100
union all select
1002, 'F ' , 'bb ' , 70
union all select
1003, 'M ', 'cc ' , 80
union all select
1004, 'F ', 'dd ' , 90
union all select
1005, 'M ', 'ee ' , 60
union all select
1006, 'M ', 'ff ' , 50
union all select
1007, 'M ', 'gg ' , 65
union all select
1008, 'F ', 'hh ' , 95
union all select
1009, 'M ', 'gg ' , 85
union all select
1010, 'F ' , 'hh ' , 75
union all select
1011, 'M ', 'gg ' , 45

select top 1 * from (select * from @t where id not in (select top 4 id from @t order by score))a order by score
id sex name score
----------- -------------------- -------------------- -----------
1002 F bb 70

(所影响的行数为 1 行)

第5差

热点排行
Bad Request.