读书人

求个统计数据sql查询语句解决办法

发布时间: 2012-05-27 05:42:30 作者: rapoo

求个统计数据sql查询语句
统计某班某学期每个学生最终成绩(表里只有该班该学期的数据)
表:id(number,主键),stunum(varchar2,学号),stuname(varchar2,姓名),mark(varchar2,成绩)

1.学号+姓名 确定学生的唯一性
2.一学期里每个学生都有多次成绩,最高分为有效成绩

查询结果:查询出这学期这个班每个学生的有效成绩
例:表数据(1,110,张三 60),(2,110,张三 70),(3,115,张三 60),此为2人

[解决办法]

SQL code
select *  from (select t.*,               ROW_NUMBER() over(partition by stunum, stuname order by mark desc) rn          from temp_marks t) where rn = 1
[解决办法]
SQL code
select t.stunum,t.stuname,max(mark)  markfrom tgroup by  t.stunum,t.stuname
[解决办法]
探讨

SQL code

select *
from (select t.*,
ROW_NUMBER() over(partition by stunum, stuname order by mark desc) rn
from temp_marks t)
where rn = 1

[解决办法]
select stunum, stuname,max(mark)
from table
group by stunum, stuname

读书人网 >oracle

热点推荐