分页查询的SQL语句,出现重复记录!
table1中表有字段(其余字段省)
ID 主键
DATA_UPDATE_TIME 数据更新时间(只存储了年月日)
分页查询的语句如下
select *
from (
select row_.*, rownum rownum_
from ( select p.id from table1 p
order by p.DATA_UPDATE_TIME desc )
row_ where rownum <= )
where rownum_ >
以每页显示10条为例
第一次 rownum <= 10) where rownum_ > 0
第二次 rownum <= 20) where rownum_ > 10
发现有一条记录在两次查询结果中重复出现,不知道问题出在哪里,请忙帮看看。
另:
DATA_UPDATE_TIME 的值有重复,不知道跟它有没有关系。
如果按ID排的话就不会出现这个问题select * from ( select row_.*, rownum rownum_ from ( select p.id from table1 p order by p.DATA_UPDATE_TIME desc ) row_) where rownum_ > ? and rownum_ <= ? 3 楼 eyejava 2007-01-30 引用select *
from (
select row_.*, rownum rownum_
from ( select p.id from table1 p
order by p.DATA_UPDATE_TIME desc )
row_ where rownum <= )
where rownum_ >
两个rownum所处的位置不一样,怎么会产生这样的sql ? 4 楼 lenozhi 2007-01-30 这句语是hibernate生成的,还真不是我写的。二楼同学的意见不错,谢谢了。