我有一个可能会返回数千条记录的搜索表单;如果查询返回超过500左右,我想显示一条消息,并让用户优化搜索以获得更少的结果。
在运行实际查询之前,我是否坚持使用Select Count?这里最好的做法是什么?
答案 0 :(得分:4)
选择前501条记录。然后,您可以显示它们并告诉用户他们应该优化搜索。
答案 1 :(得分:2)
SELECT COUNT(*)
FROM (
SELECT TOP 500 *
FROM mytable
)
这比仅仅SELECT COUNT(*)
答案 2 :(得分:0)
您是否还希望向用户显示前n个结果?这可以通过编写“选择顶部n”(n是您想要获得的最大行数)而不是“选择”来实现。有关详细信息,请参阅this link。