三层海量查询问题(100分)

  • 主题发起人 主题发起人 w_j_y
  • 开始时间 开始时间
W

w_j_y

Unregistered / Unconfirmed
GUEST, unregistred user!
如何进行三层海量查询(500000)?
 
建議采用分段形式查詢采集!也就是clientdataset.packet=100來實現.
 
楼上的朋友,像你这么说,那加载那么多条记录,也要一段时间,能不能做一个过滤器!
 
我们现在的系统是基于广网的,不可能一次传这么大的数据。我们每页显示10行,下一页再取,不可能一次取500000行,如果真的要这么做,要不是你疯了就是我疯了。
 
谁能写一个分页的 SQL ?
 
你得有具体的查询要求,比如要不要记录数,合计,分组这些要求,还是只要列出一些记录,如果有这些要求,可能要先发送指令,由服务器处理取得结果,再在CLIENTDATASET。PACKET的值里设一小值,一块显示出来,而且要向客户说明,如果没有这些要示的话那delphisuccess的方法简单易行。
 
在查询时,很难相信有人一次看:500000条记录?要么是说在这么条记录中查自已想要的东东?要是分次看,就容易处理了,进行分页处理,每页来个50条记录,保证速度不慢。不过,当一个人看了:50000页时,估计是准备进医院了[:D]
 
用sql进行分页查询很好的
 
select top @pagesize b.* from (select top @tre_pagesize 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段
/*
@recordcount = 记录数
@pagesize = 每页记录数
@page = 当前页
@tre_pagesize = (@recordcount/@pagesize - page + 1) * @pagesize
*/
 
三层分布式数据库海量查询Demo下载
http://greengrass.edu.topzj.com/thread-9779-1-1.html
 
三层分布式数据库海量查询Demo下载
http://greengrass.edu.topzj.com/forum-85990-1.html
 
后退
顶部