oracle 分页大于等于小于分页临界点

正确的:

SELECT * FROM (SELECT A.*,ROWNUM RN FROM (
select * from t_agent t where t.agent_parent = 20020
and t.agent_state = 0

) A WHERE ROWNUM <= 22) WHERE RN > 0;

错误的:这样只会取出21条数据,到临界点,比如有22条数据,下一页不会显示一条数据,只会看到一页,21条数据,少了一条。

SELECT * FROM (SELECT A.*,ROWNUM RN FROM (
select * from t_agent t where t.agent_parent = 20020
and t.agent_state = 0

) A WHERE ROWNUM < 22) WHERE RN >= 0;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章