Foxtable(狐表)用户栏目专家坐堂 → 通过FILL加载过来的数据进行筛选,这样写会慢吗?


  共有6116人关注过本帖树形打印复制链接

主题:通过FILL加载过来的数据进行筛选,这样写会慢吗?

帅哥哟,离线,有人找我吗?
YUNSEL
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:2567 威望:0 精华:0 注册:2016/11/9 19:13:00
通过FILL加载过来的数据进行筛选,这样写会慢吗?  发帖心情 Post By:2022/8/2 7:15:00 [只看该作者]

Tables(e.Form.Name & "_table1")表中有一个ID值;
Tables(e.Form.Name & "_table2")表中也有个ID值;
这两个表都是用Tables(e.Form.Name & "_table2").Fill方法加载的;

现在想用一段代码,筛选出第一个表中的ID没有包含在第二个表中的ID的记录,我现在是这样写的:
Tables(e.Form.Name & "_table1").Filter = "ID not in (" &  DataTables(e.Form.Name & "_table2").GetComboListString("ID").Replace("|", ",")  & ")"

这样写测试了下,是可以的,担心数据量大的时候,是不是很慢呀

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/8/2 8:50:00 [只看该作者]

只要数据多了,做什么都慢。可以考虑分页加载,按条件加载数据

 回到顶部
帅哥哟,离线,有人找我吗?
chnfo
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2243 积分:18477 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2022/8/2 14:02:00 [只看该作者]

1、正如版主所说,数据量大了以后,怎么都会慢的
2、Tables(e.Form.Name & "_table1").Filter = "ID not in (" &  DataTables(e.Form.Name & "_table2").GetComboListString("ID").Replace("|", ",")  & ")"
似乎有点点问题
 "ID not in ('" &  DataTables(e.Form.Name & "_table2").GetComboListString("ID").Replace("|", "','")  & "')"
3、如果只是为了查table1的数据,那么table2的数据没必要加载到界面上,用一个变量从后台获取数据
[此贴子已经被作者于2022/8/2 14:06:11编辑过]

 回到顶部