确定查询是否将在SQL Server中返回“太多记录”的有效方法

时间:2009-03-26 16:07:38

标签: asp.net sql-server search forms count

我有一个可能会返回数千条记录的搜索表单;如果查询返回超过500左右,我想显示一条消息,并让用户优化搜索以获得更少的结果。

在运行实际查询之前,我是否坚持使用Select Count?这里最好的做法是什么?

3 个答案:

答案 0 :(得分:4)

选择前501条记录。然后,您可以显示它们并告诉用户他们应该优化搜索。

Here's how

答案 1 :(得分:2)

SELECT COUNT(*)
FROM   (
       SELECT TOP 500 *
       FROM   mytable
       )

这比仅仅SELECT COUNT(*)

更有效

答案 2 :(得分:0)

您是否还希望向用户显示前n个结果?这可以通过编写“选择顶部n”(n是您想要获得的最大行数)而不是“选择”来实现。有关详细信息,请参阅this link