简单Oracle数据库查询问题

ralpha08 2005-04-15 11:37:14
Oracle数据库中如何取结果集头几条记录。
就是像SQL Server中的 top 方法 那样的效果
...全文
88 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ralpha08 2005-04-18
  • 打赏
  • 举报
回复
晕~
Oracle 怎么还没SQL Server好用 , 这样一个简单的排序都必须全表检索!
这样写出来的东西效率会很差啊!
happyct 2005-04-15
  • 打赏
  • 举报
回复
Oracle不支持top
可以用SELECT * FROM TABLENAME where rownum<11
如果要排序的则
SELECT * FROM
(SELECT * FROM TABLENAME order by xxx)
where rownum<11

其实,ORACLE用rownum来操作,有时结果也不一定正确。

一般来说,要使得rownum返回结果争取的话,最好按照有唯一索引的字段排序

select * from table where rownum<11 order by id; id 是唯一索引
happyct 2005-04-15
  • 打赏
  • 举报
回复
select id from table where rownum<=10;
ralpha08 2005-04-15
  • 打赏
  • 举报
回复
up2
ralpha08 2005-04-15
  • 打赏
  • 举报
回复
up

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧