SQL_FETCH_NEXT rules:
Condition | First row of new rowset |
---|---|
Before start | 1 |
CurrRowsetStart + RowsetSize <= LastResultRow | CurrRowsetStart + RowsetSize |
CurrRowsetStart + RowsetSize > LastResultRow | After end |
After end | After end |
SQL_FETCH_PRIOR rules:
Condition | First row of new rowset |
---|---|
Before start | Before start |
CurrRowsetStart = 1 | Before start |
1 < CurrRowsetStart <= RowsetSize | 1 a |
CurrRowsetStart > RowsetSize | CurrRowsetStart - RowsetSize |
After end AND LastResultRow < RowsetSize | 1 a |
After end AND LastResultRow >= RowsetSize | LastResultRow - RowsetSize + 1 |
SQL_FETCH_RELATIVE rules:
Condition | First row of new rowset |
---|---|
(Before start AND FetchOffset > 0) OR (After end AND FetchOffset 0) | -- a |
Before start AND FetchOffset <= 0 | Before start |
CurrRowsetStart = 1 AND FetchOffset < 0 | Before start |
CurrRowsetStart > 1 AND CurrRowsetStart + FetchOffset <1 AND |FetchOffset| > RowsetSize | Before start |
CurrRowsetStart > 1 AND CurrRowsetStart + FetchOffset <1 AND |FetchOffset| <= RowsetSize | 1 b |
1 <= CurrRowsetStart + FetchOffset <= LastResultRow | CurrRowsetStart + FetchOffset |
CurrRowsetStart + FetchOffset > LastResultRow | After end |
After end AND FetchOffset >= 0 | After end |
SQL_FETCH_ABSOLUTE rules:
Condition | First row of new rowset |
---|---|
FetchOffset <0 AND |FetchOffset| <= LastResultRow | LastResultRow + FetchOffset + 1 |
FetchOffset <0 AND |FetchOffset| > LastResultRow AND |FetchOffset| > RowsetSize | Before start |
FetchOffset <0 AND |FetchOffset| > LastResultRow AND |FetchOffset| <= RowsetSize | 1 a |
FetchOffset = 0 | Before start |
1 <= FetchOffset <= LastResultRow | FetchOffset |
FetchOffset > LastResultRow | After end |
SQL_FETCH_FIRST rules:
Condition | First row of new rowset |
---|---|
Any | 1 |
SQL_FETCH_LAST rules:
Condition | First row of new rowset |
---|---|
RowsetSize = LastResultRow | LastResultRow - RowsetSize + 1 |
RowsetSize > LastResultRow | 1 |
SQL_FETCH_BOOKMARK rules:
Condition | First row of new rowset |
---|---|
BookmarkRow + FetchOffset <1 | Before start |
1 <= BookmarkRow + FetchOffset <= LastResultRow | BookmarkRow +FetchOffset |
BookmarkRow + FetchOffset > LastResultRow | After end |