Simplify even more.

This commit is contained in:
hns 2009-04-01 16:06:13 +00:00
parent b3112585bb
commit 3f6010377e

View file

@ -921,13 +921,12 @@ public final class Relation {
if (maxSize > 0) { if (maxSize > 0) {
if (otherType.isOracle()) { if (otherType.isOracle()) {
// see http://www.oracle.com/technology/oramag/oracle/06-sep/o56asktom.html // see http://www.oracle.com/technology/oramag/oracle/06-sep/o56asktom.html
int maxRow = offset + maxSize;
if (offset > 0) { if (offset > 0) {
q.insert(0, "SELECT * FROM ( SELECT /*+ FIRST_ROWS(n) */ a.*, ROWNUM rnum FROM ("); q.insert(0, "SELECT * FROM ( SELECT /*+ FIRST_ROWS(n) */ a.*, ROWNUM rnum FROM (");
q.append(") a WHERE ROWNUM <= ").append(maxRow).append(") WHERE rnum > ").append(offset); q.append(") a WHERE ROWNUM <= ").append(offset + maxSize).append(") WHERE rnum > ").append(offset);
} else { } else {
q.insert(0, "SELECT /*+ FIRST_ROWS(n) */ * FROM ("); q.insert(0, "SELECT /*+ FIRST_ROWS(n) */ * FROM (");
q.append(") WHERE ROWNUM <= ").append(maxRow); q.append(") WHERE ROWNUM <= ").append(maxSize);
} }
} else { } else {
q.append(" LIMIT ").append(maxSize); q.append(" LIMIT ").append(maxSize);