以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 不重复取值  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=159267)

--  作者:sanny
--  发布时间:2020/12/19 11:56:00
--  [求助] 不重复取值
老师,以下是得出 FNumber1 的个数量,存到列Suppliers中。如果FNumber1 的值相同时只计数1次,如何调整,谢谢。


rr("Suppliers") = DataTables("Pricelist").Compute("count(FNumber1)", "FNumber1 = \'" & rr("FNumber") & "\' ")

--  作者:有点蓝
--  发布时间:2020/12/19 13:47:00
--  
rr("Suppliers") = DataTables("Pricelist").getvalues("FNumber1", "FNumber1 = \'" & rr("FNumber") & "\' ").count
--  作者:sanny
--  发布时间:2020/12/19 14:12:00
--  
谢谢,不过记录很多,这个就慢很多了,还有其它优化的吗 ?
--  作者:有点蓝
--  发布时间:2020/12/19 14:13:00
--  
使用sql,或者分组统计
--  作者:chnfo
--  发布时间:2020/12/19 22:16:00
--  
记录很多,不要用getvalues,用遍历。20万行的数据,效率差30倍
--  作者:sanny
--  发布时间:2020/12/20 11:28:00
--  

如下,如何优化,请指点,谢谢。

rr("Suppliers") = DataTables("Pricelist").getvalues("FNumber1", "FNumber1 = \'" & rr("FNumber") & "\' ").count

--  作者:有点蓝
--  发布时间:2020/12/20 20:51:00
--  
差点掉坑里了,既然指定了条件:"FNumber1 = \'" & rr("FNumber") & "\' ",不重复的FNumber1肯定只有一个,还有必要统计?
[此贴子已经被作者于2020/12/20 20:51:50编辑过]