Oracle (Оракл) 9.0.1 ограничить число выводимых записей

SQL во всех проявлениях - от ANSI-92 до TSQL.

Модераторы: Yurich, Absurd

Ответить
Kolinus
Сообщения: 449
Зарегистрирован: 23 авг 2004, 14:02
Откуда: Минск

30 авг 2005, 14:21

Добрый день.
Интересуют два момента:
1) Как реализовать сабж (то есть например я выбираю по какому-либо условию пачку записей а из нее хочу выбрать с 10 по 19 )
2) Как пункт 1 связать с Hibernate
Заранее спасибо
В SAD - все в SAD.
Аватара пользователя
Naeel Maqsudov
Сообщения: 2551
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

22 сен 2005, 10:28

Вот если нужно выбрать N первых записей (только для этого случая), то это

select * from Table where rownum <=n

А вот чтоб так как вы хотите, то это только открывать курсор, а затем в цикле пропустить лишнее, да профетчить нужное.

Также можно выборку сунуть во временную таблицу (начиная вроде с 8.1.7 есть виртуальные временные таблицы (живут только в памяти)). Делая выборку надо добавить к ней поле Rownum as N. Ну а дальше - дело техники: where N between n1 and n2.
Ответить