Foxtable(狐表)用户栏目专家坐堂 → 谁有大规模数据库 帮我测试下这两个自定义函数的效率


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

主题:谁有大规模数据库 帮我测试下这两个自定义函数的效率

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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
谁有大规模数据库 帮我测试下这两个自定义函数的效率  发帖心情 Post By:2012/10/14 10:33:00 [显示全部帖子]

'自定义函数Vlookup1 0 表名,1查找列,2查找值,3返回值列

dim dr as datarow = datatables(args(0)).find(args(1) & "= '" & args(2) & "'")
if dr isnot nothing then
return dr(args(3))
else
return nothing
end if

'自定义函数Vlookup2 0 表名,1查找列,2查找值,3返回值列
dim r as integer = tables(args(0)).find(args(2),0,args(1),false,true,false)
if r> -1 then
return tables(args(0)).rows(r)(args(3))
else
return nothing
end if

 

'测试效率
Dim st As Date = Date.Now
functions.execute("vlookup1",表名,查找列,查找值,返回值列)
MessageBox.Show("vlookup1耗时: " & (Date.Now - st).TotalSeconds & "秒")
st = now
functions.execute("vlookup2",表名,查找列,查找值,返回值列)
MessageBox.Show("vlookup2耗时: " & (Date.Now - st).TotalSeconds & "秒")


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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
  发帖心情 Post By:2012/10/14 10:52:00 [显示全部帖子]

效率的高低 决定于代码的本身

但要测试,必须使用大规模数据表,才能放大差距


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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
  发帖心情 Post By:2012/10/14 14:21:00 [显示全部帖子]

帮忙测试一下

 回到顶部