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

类似 mssql select top ...的实现

在ms sqlserver中,取满足条件的前几行可以使用select top语句,但在oracle中并没有这样的语句,
我从网上看到了一种实现

select * (select * from talbename) where rownum <=100 order by rownum asc

这样的确可以实现与select top 相同的效果
不过我想请问,这条语句是先查找出所有结果,然后再返回前100行?
还是查找到符合条件的100行记录就停止查找?
order by asc...画蛇添足了吧。子查询里面要加上排序
当然要检索所有的结果,否则怎么知道那100条记录就是符合条件的

嗯,外面的orderby 似乎是没用, 我实际使用的时候用的是下面的语句
select * (select * from talbename order by UUID) where rownum <=100

实际上我是想在分页上使用,每页查100条,用户按下一页时候再查100条,而不是一次全查出来
按照1楼说的,似乎这条语句达不到我想要的效果啊


引用
select * from
  (select a.*,row_number()over(order by uuid)rn from tablename a)
where rn>=beginnum and rn <=endnum
order by rn



说实话,没看懂
不过我查了下 rownum的解释,这是个伪列,标明当前记录是查询到的第几条,
如果这样的话,
select * from table where rumber <= 100 就可以查询出前100条
然后我可以记录下当前第100条的记录的中的ID,以后每一页,只要
select * from table where rumber <= 100 and ID>LastID
这样就可以满足我的需求了
这样的话 ,我实在没有看出嵌套select 有什么作用

如果你愿意每翻一


相关问答:

MSSQL 2005 数据库恢复失败

不知道是什么原因失败了

如下图所示:


如果图片说盗链可以进入以下链接:
http://hiphotos.baidu.com/z789017890/pic/item/890d6cf0c6996482a40f5282.jpg

先感谢你的帮助~~
链接也盗链 ......

用visual studio的朋友进哦!mssql问题!

我使用了sharpdevelop做学习!在data工具卡中只有寥寥几个


欲浏览mssql数据库test中某一张表。貌似没发现啥控件。用了view和source的。
没有设置的地方,卡在这里大概好几个小时了。baidugoole无果。 ......

vb+mssql查询问题2

比如
一个是用户列表
UserID
1
2
3
4

一个是记录列表(每个用户一天可能有多条数据)
UserID Day
1 2009-09-22
1 2009-09-22
1 2009-09-22

2 2009-09-22
2 20 ......

MSSQL中远程IP访问限制

MYSQL中远程IP访问限制是:GRANT ALL PRIVILEGES ON *.* TO username'@'IP地址 IDENTIFIED BY '密码 ' WITH GRANT OPTION

有谁知道在MSSQL中怎么设置IP访问限制
引用
MYSQL中远程IP访问限 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号