我有一个页面,我有4个标签显示不同的表格上的4个不同的报告。
我使用< table>中的select count(*)获取每个表的行计数。查询和显示选项卡上每个表中可用的行数。因此,每页回发会导致执行5个计数(*)查询(4个获取计数,1个分页)和1个查询获取报告内容。
现在我的问题是:count(*)查询真的很贵 – 我应该在页面的视图状态中保持行数(至少显示在选项卡上),而不是多次查询?
COUNT(*)个查询有多贵?
解决方法
您需要附上
SQL Profiler或
an app level profiler like L2SProf,并在之前查看您的上下文中的实际查询成本:
>猜测问题是什么,并试图确定潜在解决方案可能带来的好处
允许其他人在da interwebs上猜测你 – 没有引用很多错误信息,包括在这个线程(但不是在这篇文章:P)
当你这样做的时候,很清楚最好的方法是什么 – 也就是说,SELECT COUNT是否是主导的东西,等等。
做到这一点,你也会知道你选择做的任何改变是否有正面或负面的影响。