分页查询效率为什么高?
时间:2011-10-27
来源:互联网
开发中经常用到分页查询,一般都是用服务器端分页。都知道分页的查询效率高。至于为什么高,我一直不太明白。
我的理解是:
比如一张表中有100W条数据,分页查询(pageSize=10)
优势一:每次查询的数据只有10条(不是一次查询100W条),因此查询效率快了一些。
优势二:响应到客户端的数据只有10条(不是一次全部响应100W条),因此 响应的效率又高了一些。
是不是这样???????
别的地方我也不知道哪里效率高了。
假如只有这两个地方效率高了,那么看看下边的例子
selct * from A.
selct count(*) from (select * from A)
要分页就要得到总记录数,我的查询条件不确定,可能是多表连接查询,我只能想到这种获得总数的方法(哪位大侠知道更好的方法请告知????????)。
这样的话,每次分页查询之前我都需要用到count(*),这样一来每次都执行了select * from A 的操作。
这样的话 查询效率高的优势(优势一)就没有了,只是响应到客户端的效率高了(优势二)。这样理解对么?????????
这样以来分页还有意义么?????
优势一和优势二到底哪个对查询效率影响比较大????????换句话说,一次全部查询比较慢,慢在哪里,是一次查询全部数据比较影响效率,还是一次把所有数据响应到客户端比较影响效率??????????
???????????结尾的是我的问题
我的理解是:
比如一张表中有100W条数据,分页查询(pageSize=10)
优势一:每次查询的数据只有10条(不是一次查询100W条),因此查询效率快了一些。
优势二:响应到客户端的数据只有10条(不是一次全部响应100W条),因此 响应的效率又高了一些。
是不是这样???????
别的地方我也不知道哪里效率高了。
假如只有这两个地方效率高了,那么看看下边的例子
selct * from A.
selct count(*) from (select * from A)
要分页就要得到总记录数,我的查询条件不确定,可能是多表连接查询,我只能想到这种获得总数的方法(哪位大侠知道更好的方法请告知????????)。
这样的话,每次分页查询之前我都需要用到count(*),这样一来每次都执行了select * from A 的操作。
这样的话 查询效率高的优势(优势一)就没有了,只是响应到客户端的效率高了(优势二)。这样理解对么?????????
这样以来分页还有意义么?????
优势一和优势二到底哪个对查询效率影响比较大????????换句话说,一次全部查询比较慢,慢在哪里,是一次查询全部数据比较影响效率,还是一次把所有数据响应到客户端比较影响效率??????????
???????????结尾的是我的问题
作者: f504501983 发布时间: 2011-10-27
呵呵! 当然是一次把所有数据都传给客户端的效率慢了! 一下网速,二是服务器对一个就发送这么多数据,况且还不是一个用户! 不慢才怪! 是1KB的数据快还是1M的数据快呢?
作者: wangshiyang 发布时间: 2011-10-27
selct * from A.
selct count(*) from (select * from A)
首先这2条语句的效率是不能等同的,在select * from A中万一你的数据库字段有很多,查询起来就会慢,开发中不建议使用*。
你说到的分页查询效率的问题也只说到了一部分。
假设现在你有1百万数据,现在不说效率问题,光显示到网页上就让人没法看吧,现在你说用分页查询不。
分页的主要用途是清晰,简单的给用户呈现出信息。用到分页当然效率会比一般查询效率高,企业不是因为效率高才用的分页,你要明白。
selct count(*) from (select * from A)
首先这2条语句的效率是不能等同的,在select * from A中万一你的数据库字段有很多,查询起来就会慢,开发中不建议使用*。
你说到的分页查询效率的问题也只说到了一部分。
假设现在你有1百万数据,现在不说效率问题,光显示到网页上就让人没法看吧,现在你说用分页查询不。
分页的主要用途是清晰,简单的给用户呈现出信息。用到分页当然效率会比一般查询效率高,企业不是因为效率高才用的分页,你要明白。
作者: ld191474639 发布时间: 2011-10-28
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28