|
|
1
1
“了解给定结果集长度的最快方法是什么” 如果这是一个很小的结果集,并且很快就得到了,那么这不是问题。电话簿上不会有很多甘道夫,而且你可能无论如何都想把他们都弄到手。
要避免在客户端上缓存整个结果集,可以尝试
然后,每行将有一个额外的列(在本例中为n),其中包含结果集中的行数。但是仍然需要相同的时间才能达到计数,因此超时的可能性仍然很大。
|
|
|
2
0
您建议的“解决方法”与count基本上是DB server所做工作的两倍。它必须首先遍历所有内容以计算结果的数量,然后执行相同的操作并返回结果。Gary(count(*)over()-analytics)提到的方法要好得多。但即使在这里,在将第一个输出返回给客户机之前,也必须创建整个结果集。因此,对于大型输出,它可能会降低内存消耗。 我认为最好的方法是只在屏幕上选择您想要的页面(+1)以确定下一个页面是否存在,例如从21到41的行。还有另一个按钮(用例)在(罕见的)有人需要的情况下计算它们。 |