В Oracle обычно такой запрос для подкачки.
SELECT * FROM (SELECT *, rownum rid FROM TABLEA WHERE rownum <= #pageend#)
WHERE rid > #pagestart#
Однако в СУБД Sybase нет функции "rownum".
Как я могу сделать этот запрос точно так же в Sybase?
Я нашел несколько способов.
используйте "rowcount"
установить количество строк 10
выберите * из таблицы
использовать идентификатор (создать временную таблицу)
SELECT *, ROWNUM = IDENTITY (8) INTO #TEMP ОТ TABLEA
SELECT * FROM #TEMP WHERE ROWNUM <# pageend # AND ROWNUM> = # pagestart #
DROP TABLE # TEMP
это не то, что я хочу.
rowcount установлен на уровне сеанса, и я не хочу создавать временную таблицу.