当前位置: 代码迷 >> Oracle认证考试 >> 请大师解决一上sql有关问题
  详细解决方案

请大师解决一上sql有关问题

热度:6957   发布时间:2013-02-26 00:00:00.0
请大师解决一下sql问题
已有学员信息表{学号,班级,学科,姓名,成绩},现要查询出各班语文成绩前10名,并且数学成绩不在倒数10名范围内的人员信息,请写出sql语句实现
------解决方案--------------------------------------------------------
select top 10 * from 表XX where 学号 not in (select top 10 学号 from stuInfo order by 数学) order by 语文 desc
------解决方案--------------------------------------------------------
select 学号
  from (select 学号,
               dense_rank() over(partition by 班级 order by 成绩 desc) cn
          from d_date
         where 学科 = '语文')
 where cn <= 10
 union
 select 学号 from(select 学号,
               dense_rank() over(partition by 班级 order by 成绩) cn
          from d_date
         where 学科 = '数学') where cn>10
------解决方案--------------------------------------------------------
这时Sybase中的语法吧,那Oracle中该怎么写,新手学习,谢谢!
  相关解决方案