是用TOP关键字对COUNT性能优化

在对大数据量进行检索或者分页的时候需要计算命中记录数大小,一般情况下我们可以直接COUNT得到结果,但是当结果集很大的时候(比如1万以上)具体结果值已经不重要了。没有人真的翻阅1万条记录,比如百度,你有多少次翻阅100页以上???

所以,当遇到这种情况的时候我们可以模糊处理,比如:每页10条记录,当命中记录数超过100页时可以显示"更多……"。 既然这样我们计算COUNT时需要个大概数据即可,这时TOP就粉墨登场了。

 

比如SQL语句:

    SELECT count(*) FROM tb1 where ……

    可以修改为

SELECT count(*) FROM (SELECT TOP 1001 * from tb1 where …… ) t

当返回结果大于1000时做模糊处理

 

 

posted @ 2013-09-22 16:06  卒子  阅读(972)  评论(0编辑  收藏  举报