我想显示一个结果表。数据来自Oracle数据库上的SQL查询。我希望一次显示一页结果(比如10条记录),最大限度地减少发送到前端的实际数据。同时,我想显示可能结果的总数(例如,显示123的1-10),并且允许分页(例如,计算每页10个,123个结果,因此13页)。如何获得总结果数和给定子集('结果页')与Oracle相同的SQL查询
我可以通过单个count
查询获得结果总数。
SELECT count(*) AS NUM_RESULTS FROM ... etc.
,我可以得到另一个查询
SELECT * FROM ... etc. WHERE ? <= ROWNUM AND ROWNUM < ?
所需的子集,但,有没有办法让一个单一查询所有相关的细节?
更新 其实用ROWNUM
上面的查询,似乎为0的工作 - 10,而不是10 - 20,所以我怎么能做到这一点?
ROW_NUM()函数与ROWNUM有什么不同? – Vihung
http://stackoverflow.com/questions/174595/in-an-oracle-database-what-is-the-difference-between-rownum-and-row-number –