Intereting Posts
Синтаксис для импорта из разных БД – MS Access Усилие UNIQUE автоматически создает ИНДЕКС в поле? Как создать таблицу из существующей таблицы 2 со значением по умолчанию и типом данных в oracle Существует ли стандартный подход к генерации sql динамически? Какой тип данных Java соответствует типу данных Oracle SQL NUMERIC? SQL, как искать отношения многих и многих Ошибка TO_DATE с помощью функции Oracle DBMS_SQL.EXECUTE Запрос MySQL для извлечения данных с именами столбцов Элемент модели, переданный в словарь, имеет тип «System.Data.Entity.DynamicProxies.Object Значение (+) в SQL-запросах ms-access: механизм БД не может найти входную таблицу или запрос Как изменить первичный ключ для некластеризации? MySQL свободное сравнение, WHERE в поле varchar с целым значением дает неожиданный результат Справка по SQL-запросам – выберите клиентов, которые заказали сегодня Сглаживание иерархического XML в SQL с использованием метода nodes ()

Как ограничить количество результатов, возвращаемых в Sybase?

Мне нужно запросить базу данных Sybase, в которой есть много данных, и хотел бы установить предел, чтобы БД останавливал запрос после 10 результатов.

Главное – производительность, поэтому было бы бесполезно, если бы он искал все результаты и затем возвращал последние 10 результатов.

заранее спасибо

Я считаю, что сначала вы можете выполнить SET ROWCOUNT 10 , а затем все запросы в этом сеансе, пока дальнейшая SET ROWCOUNT не вернет не более 10 строк. Как отмечается в комментарии, это затрагивает все следующие запросы в сеансе (не только SELECT s!) До тех пор, пока не выключится (если установить на 0) или не будет отличаться – этот «глобальный» эффект делает его менее удобным, чем типичное предложение LIMIT других движках, которые по сути являются запросами, но, я не думаю, что вы можете что-то с этим сделать.

С Sybase 12.5 и более поздними версиями вы можете использовать верхний предикат в своем заявлении select. Это функция, отличная от ANSI, для которой MSSQL существует довольно долгое время.

 select top 10 * from people 

Вы не можете использовать top в подзапросах, обновлениях или удалениях, и нет соответствующего «нижнего» предложения.

Преимущество top – вам не нужно беспокоиться о его перезагрузке. Это особенно важно, если вы используете пул соединений с базой данных.

Вы можете попробовать добавить этот раздел: «выберите только первые n строк».