Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:重复次数

1楼
ganlan 发表于:2023/10/30 11:07:00
想统计比如订单明细中,订单号在订单号列出现次数,也即是这个订单号出现多少行产品。
用以下代码,有点卡,5000多的起码要几十秒,想请教一下有没有其他快速点的方法,谢谢
If e.DataCol.Name = "订单号" Then 
e.DataRow("行数") = DataTables("表A").Compute("Count(订单号)", "[订单号] = '" & e.NewValue & "'")
End If
2楼
有点蓝 发表于:2023/10/30 11:10:00
已经是最快的了,如果重置列5000多行都要算上一次,肯定费时的。平时订单号发送变化的时候,直接更新这个订单号的数据,就不用这么费时了
3楼
ganlan 发表于:2023/10/30 11:12:00
哦,因为看到用excel的countif函数,很快可以,以为这个可以也那么快
4楼
有点蓝 发表于:2023/10/30 11:16:00
如果是重置列,可能还触发了其它的代码
5楼
ganlan 发表于:2023/10/30 14:58:00
恩,我发现如果是A表在A表列查找就会很卡,但是如果去其他表,只要不是本表,就很快,应该是在本表触发新建的可能数据源不确定数据,所以就卡,如果是其他表,数据源数据确定所以很快
6楼
有点蓝 发表于:2023/10/30 15:07:00
A表的事件代码都发上来看看
7楼
ganlan 发表于:2023/10/30 18:05:00
不管是什么,涉及到统计的,比如求和,求个数,都是只要是同一个表的都卡,但是复制一个一样的表做B表,跨表去统计,就会很快
If e.DataCol.Name = "订单号" Then 
e.DataRow("行数") = DataTables("表A").Compute("Count(订单号)", "[订单号] = '" & e.NewValue & "'")
End If
8楼
有点蓝 发表于:2023/10/30 20:04:00
请上传实例测试
共8 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 2 queries.