易截截图软件、单文件、免安装、纯绿色、仅160KB

获取oracle中待查询数据排序后的排名 - Oracle / 开发

eg:
create table dml.cases(
num NUMBER primary key, --序号
name VARCHAR2(50), --案例名称
intro VARCHAR2(100), --案例简介
);

现在希望获得num=10 的数据 在按num 降序排列后的排名,也就是第几个

再补充个问题啊,就是要查按num 降序排列第十个数据怎么写,谢谢


SQL code:
select rownum rn,t.* from
(select * from dml.cases order by num desc) t
where t.num=10;


不能用rownum,因为rownum必须包含rownum=1的值,否则取不到

可以用分析函数row_number()帮你解决问题

SQL code:
--第10个数据
SELECT *
from (SELECT rownum rn, t.* from (SELECT * from dml.cases ORDER BY num DESC) t)
WHERE rn = 10;


create table dml.cases(
num NUMBER primary key, --序号
name VARCHAR2(50), --案例名称
intro VARCHAR2(100), --案例简介
);

再补充个问题啊,就是要查按num 降序排列第十个数据怎么写,谢谢

1 select count(*) from dml.cases where num>10;
2 补充问题:select * from dml.cases where rowid=10 order by dese;

 
1 select count(*)+1 from dml.cases where num>10;
2 补充问题:select * from dml.cases where rowid=10 order by dese;

好像都理解错我的意思了,第一个帖子的正确答案:
select row_number


相关问答:

Oracle 数据导出问题 - Oracle / 高级技术

exp user/password@dbname file=c:\table.dmp tables=jbitaku,jbitakum grants=y
然後按回車鍵 說明:  user/password@dbname  分別表示用戶名,密碼和服務名 f ......

oracle并发处理SOS - Oracle / 开发

我在开发的这个应用并发性比较高,oracle更新数据时候如何处理并发处理呢?各位大侠发表好的观点啊,在线等待!
oracle数据更新时,会自动默认行锁定,楼主不要操心,Oracle对并行处理已经很成熟了

引用
oracle ......

oracle与aix - Oracle / 高级技术

在系统运行的时候总是有一块磁盘始终闪红灯,进入系统后
#topas查看总是有一块磁盘%BUSY为90%以上,
数据库版本:oracle 9.2.0.7 
数据文件挂载的节点:/oradata/pcs/ 逻辑卷号lv04 
#lslv -l lv04 ......

oracle 10g data guard - Oracle / 基础和管理

做玩data guard 后
在Primary服务器 执行 
SQL>SELECT SEQUENCE#,APPLIED from V$ARCHIVED_LOG ORDER BY SEQUENCE#;
 SEQUENCE# APP
---------- ---
  13 NO
  13 YES ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号