很奇怪的sql语句的问题,高手速度来
SELECT *
FROM (SELECT INNER_TABLE.*, ROWNUM OUTER_TABLE_ROWNUM
FROM (
select * from tableA where tableA.id
in ( ... )
) INNER_TABLE
WHERE ROWNUM <=4) OUTER_TABLE
WHERE OUTER_TABLE_ROWNUM >=1
这个语句用来数据库分页的,查出前4条数据,查出结果为
数据1
数据2
数据3
数据4
但如果我把红色标记的4换成5的话像查询出5条数据,结果为
数据2
数据4
数据5
数据1
数据3
导致该问题的原因不太明白,输出顺便跟什么有关?可以肯定的是跟红色标记的省略号内的内容有关,哪个高手能帮忙解释下?