求哪位救救我!

snobycao 2004-09-27 05:24:00
现要依据一定的条件查询一个SQL表,然后需将满足条件的记录改存到另一个ACCESS表中,由于表中记录比较多,考虑到实时性的要求,我需要先将所有满足时间要求的记录先查询出来,比如先将所有时间等于20040927170000的记录SELECT出来,然后再在这个结果子集中进一步挑出我所需要的满足其它要求的记录,因为索引是以时间字段建立的,因此这样第一步查询速度较快,并且结果集记录量大为减少,同时它已经处于内存中,然后再通过循环查找满足进一步条件的记录并保存到ACCSEE表中,这样才能满足速度的要求.
我的困惑就是我不知道在DELPHI中如何能把第一步查询的结果先暂存起来,然后再在其基础上进行下一步的多个其它不同条件的查询,完成后再改变时间,得到第二个已经大大减少数量的记录子集,再重复相同的工作,直到最后所以满足时间以前其它要求的记录全部导入到另一张表中,请各位教教我,我查了查书,好像在查询分析器中通过临时表(#表名)能实现,在DELPHI中有临时表这个概念嘛,通过TQuery控件怎样能实现分步查询呢?谢谢各位大虾先啦(实在是要被老板逼的想跳楼了,唉,都怪自己没学好!)
...全文
88 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
kelecharles 2004-10-14
  • 打赏
  • 举报
回复
可以考虑建立临时表
snobycao 2004-09-28
  • 打赏
  • 举报
回复
用SQL语句一起查不来不行,数据量太大,并且同时满足所有条件的话,数据查询的跨度太大,会影响其它进程的执行
我需要就是能如何实现在第一步SELECT的基础上进行基于其结果的二次查询,不知道怎么实现?
cd_fsy2000 2004-09-27
  • 打赏
  • 举报
回复
为什么不用sql语句一起查出来,根据条件
sql语句是在服务器上执行的,应该速度很快啊
把服务器配置好一点不就得了
想我要关联7个表从20-30万条数据中查询,都是很快的
zhangl_cn 2004-09-27
  • 打赏
  • 举报
回复
同意楼上
TQuery.Filter:= //设置过滤条件,
Filtered:=true;
iamduo 2004-09-27
  • 打赏
  • 举报
回复
难道你用的数据库控件没有FilterString之类,可以用于刷选的属性吗?
保存什么,用控件提供的刷选功能不就可以了。
julyicecream 2004-09-27
  • 打赏
  • 举报
回复
我也不会,帮你顶一下

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧