Эффективный способ определить, будет ли запрос возвращать «слишком много записей» в SQL Server - PullRequest
0 голосов
/ 26 марта 2009

У меня есть поисковая форма, которая потенциально может вернуть тысячи записей; Я хотел бы показать сообщение, если запрос возвращает более 500 или около того, и заставить пользователя уточнить поиск, чтобы получить меньше результатов.

Застрял ли я в использовании счетчика выбора перед выполнением фактического запроса? Какая лучшая практика здесь?

Ответы [ 3 ]

4 голосов
/ 26 марта 2009

Выберите первые 501 запись. Затем вы можете отобразить их и сказать пользователю, что они должны уточнить свой поиск.

Вот как

2 голосов
/ 26 марта 2009
SELECT COUNT(*)
FROM   (
       SELECT TOP 500 *
       FROM   mytable
       )

Это более эффективно, чем просто SELECT COUNT(*)

0 голосов
/ 26 марта 2009

Хотели бы вы показать вашему пользователю первые n результатов? Это можно сделать, написав «Select top n» (n - максимальное количество строк, которое вы хотите получить) вместо «Select». См. эту ссылку для получения более подробной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...