select * from dinya_test02;select * from
(
select
t.classes,
t.name,
t.score,
rank() over(partition by t.classes order by t.score desc) rank
from
dinya_test02 t
) s
where s.rank<=5;
(
select
t.classes,
t.name,
t.score,
rank() over(partition by t.classes order by t.score desc) rank
from
dinya_test02 t
) s
where s.rank<=5;
解决方案 »
- oracle无效且未通过重新验证
- Oracle中的check约束问题——4位字符型数字的约束问题
- OracleDBConsole服务无法启动
- 创建索引的一个或多个字段上有相同的数据,可以吗?
- oracle 的24小时制中的12:30的小时怎么取出来是00,怎么可以取出来是12
- Oracle服务启动不了
- 一保存就提示ORA-01747错误,无效的用户,表,列,大家帮我看看哪里有问题
- 初写oracle存储过程,还望指教!
- 关于更改数据记录的日期和时间问题?
- 寻求Oracle下任意一句简单的插入时间(静态的时间值)的SQL语句
- 我的oracle 9i为什么没让我装server端的软件?
- ◆要选出最后的一条记录◆
------------------------------ ------------------------------ ----------
二 帅哥1 66
二 帅哥2 66
二 帅哥3 77
二 帅哥4 88
二 帅哥5 33
二 帅哥6 26
三 美女1 92
三 美女2 77
四 孩子1 35
四 孩子2 66
四 孩子3 53
一 学生1 70
一 学生7 55
一 学生2 90
一 学生3 77
一 学生4 94
一 学生5 78
一 学生6 9918 rows selectedSQL> select * from
2 (
3 select
4 t.classes,
5 t.name,
6 t.score,
7 rank() over(partition by t.classes order by t.score desc) rank
8 from
9 dinya_test02 t
10 ) s
11 where s.rank<=5;CLASSES NAME SCORE RANK
------------------------------ ------------------------------ ---------- ----------
二 帅哥4 88 1
二 帅哥3 77 2
二 帅哥1 66 3
二 帅哥2 66 3
二 帅哥5 33 5
三 美女1 92 1
三 美女2 77 2
四 孩子2 66 1
四 孩子3 53 2
四 孩子1 35 3
一 学生6 99 1
一 学生4 94 2
一 学生2 90 3
一 学生5 78 4
一 学生3 77 515 rows selectedSQL>