Index: BasePeer.java =================================================================== RCS file: /home/cvspublic/db-torque/src/java/org/apache/torque/util/BasePeer.java,v retrieving revision 1.78 diff -u -r1.78 BasePeer.java --- BasePeer.java 22 Feb 2004 06:16:35 -0000 1.78 +++ BasePeer.java 9 Mar 2004 15:43:34 -0000 @@ -885,9 +885,8 @@ * SELECT B.* FROM ( * SELECT A.*, rownum as TORQUE$ROWNUM FROM ( * query - * ) A - * ) B WHERE B.TORQUE$ROWNUM > offset AND B.TORQUE$ROWNUM - * <= offset + limit + * ) A WHERE rownum <= offset + limit + * ) B WHERE B.TORQUE$ROWNUM > offset * * * @param query the query @@ -904,22 +903,29 @@ buf.append(query.toString()); buf.append(" ) A "); - buf.append(" ) B WHERE "); - if (offset > 0) + if (offset >= 0) { - buf.append(" B.TORQUE$ROWNUM > "); - buf.append(offset); if (limit > 0) { - buf.append(" AND B.TORQUE$ROWNUM <= "); + buf.append(" WHERE rownum <= "); buf.append(offset + limit); } + buf.append(" ) B "); + if (offset > 0) + { + buf.append(" WHERE B.TORQUE$ROWNUM > "); + buf.append(offset); + } } else { - buf.append(" B.TORQUE$ROWNUM <= "); + if (limit > 0) + { + buf.append(" WHERE rownum <= "); buf.append(limit); + } + buf.append(" ) B "); } return buf.toString(); }