189 8069 5689

oracle怎么排名 排序 oracle

oracle怎么查排名头两位信息

oracle查询排名可以使用排名函数。

创新互联公司从2013年开始,先为锦江等服务建站,锦江等地企业,进行企业商务咨询服务。为锦江企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

比如:RANK DENSE_RANK

参考语句:

--按照笔试成绩进行排名,取出前两名

select * from

(

SELECT p.writtenExam, i.stuName, i.stuClass,

RANK() OVER ( ORDER BY p.writtenExam desc ) 排名1

,DENSE_RANK() OVER ( ORDER BY p.writtenExam desc) 排名2

FROM stuInfo i

INNER JOIN stuMarks p

ON i.stuNo = p.stuNo

) f

where 排名1=2

oracle rank函数怎么用

简单用法:

rank()

over(partition

by

分组字段

order

by

排序字段)

partition

by

分组字段为可选。

oracle里面相关的排序函数:

row_number

排名不并列

rank

排名并列

dense_rank排名并列

集中函数区别:

一共四名选手参赛,两名选手的成绩一致,皆为第二名。那么按照不同的算法排名如下:

row_number

1,2,3,4

(2,3的成绩一致)

rank

1,2,2,4(没有第三名)

dense_rank

1,2,2,3

oracle数据库中怎样依据成绩实现排名

首先,来构造一些数据

drop table test;

create table test

(

name varchar2(10),

account number(5)

);

insert into test values ('张三','5');

insert into test values ('王五','10');

insert into test values ('小二','10');

insert into test values ('李四','20');

insert into test values ('小三','40');

insert into test values ('小四','50');

insert into test values ('小五','90');

insert into test values ('小六','90');

insert into test values ('小七','90');

commit;

下面来看一下一些方式的排名结果:

1.  select     t.*,dense_rank() over(order by t.account asc)   排名   from test t;

2. select   t.*,dense_rank() over(order by t.account desc) 排名    from  test t;

3. select t.*,rank() over(order by t.account asc) 排名 from test t;

4. select t.*,rank() over(order by t.account desc) 排名 from test t;


新闻名称:oracle怎么排名 排序 oracle
文章地址:http://cdxtjz.cn/article/hpsepi.html

其他资讯