ORACLE ROWNUM函数(使用分页页面)

时间:2013-09-25 07:37:34

标签: php oracle pagination

我仍然对ROWNUM oracle函数感到困惑。

上次我在MySQL函数中使用LIMIT的工作原理如下:

$page -= 1;
$per_page = 3;
$previous_btn = true;
$next_btn = true;
$first_btn = true;
$last_btn = true;
$start = $page * $per_page;

$sql = ... WHERE ... LIMIT $start, $per_page;

但是现在我如何在ORACLE中使用ROWNUM?

$sql = ... WHERE ... ROWNUM $start, $per_page;

我使用它是因为我有分页页面。

任何人都请建议。

1 个答案:

答案 0 :(得分:0)

在Oracle中,Rownum值仅在查询的过滤阶段之后分配,因此您必须将其作为内联视图。等,

select *
  from (select col1, col2, ROW_NUMBER() OVER(ORDER BY col1 ASC) RowNumber 
       FROM table)
 where rownumber between 1 and 10

或者

select *
  from (select col1, col2, ROW_NUMBER() OVER(ORDER BY col1 ASC) RowNumber 
       FROM TABLE)
 WHERE RowNumber > 1 AND RowNumber < 10;