如何预测结果集行数?

时间:2010-05-25 18:07:05

标签: sql sql-server-2008 throttling

我有一个应用程序,我为SQL Server 2008动态创建一个大的SQL查询。此查询基于用户可能提供的各种搜索条件,例如lastname,firstname,ssn等搜索。

要求是,如果用户给出了一个条件,由此形成的查询可能返回很多行(可配置为最多N行),那么应用程序必须向用户发送回消息,说他需要优化他的搜索查询,因为现有查询将返回太多行。

我不想将5000行反馈给客户端,然后丢弃该数据只是为了向用户显示错误。什么是解决这个问题的有效方法?

1 个答案:

答案 0 :(得分:4)

为什么不只显示前N行和消息?将返回的行限制为N + 1,如果返回的行数为> N然后显示消息:)

如果您只想查看查询返回的行数,那么select count(id)(或某些列名称)代替select *