Foxtable(狐表)用户栏目专家坐堂 → 跨表取值(已解决)


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

主题:跨表取值(已解决)

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/4/19 8:39:00 [显示全部帖子]

For i1 As Integer = 0 To Tables("表A").Rows.Count - 1
    For i2 As Integer = 0 To Tables("表B").Rows.Count - 1
        If Tables("表A").Rows(i1)("jth") = Tables("表B").Rows(i2)("jth") Then
            Tables("表A").Rows(i1)("jx")  = Tables("表B").Rows(i2)("jtlx")
        Else
            Continue For
        End If
    Next
Next

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/4/19 8:53:00 [显示全部帖子]

以下是引用muhua在2013-4-19 8:43:00的发言:
If e.DataCol.Name = "第一列"
    If e.NewValue > "" Then
        Dim dr As DataRow = DataTables("表B").Find("第一列='" & e.DataRow("第一列") & "'")
        If dr Is Nothing Then
            e.DataRow("第二列") = Nothing
        Else
            e.DataRow("第二列") = dr("第二列")
        End If
    Else
        e.DataRow("第二列") = dr("第二列")
    End If   
End If
测试过find的效率,似乎很低,都不敢用了。
 


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/4/19 9:14:00 [显示全部帖子]

测试了三种查找最大号的方法。

第一个最快:

Dim s As String = DataTables("数据字典").Compute("Max(编号)")
DataTables("数据字典").LoadFilter = "编号 = '" & s & "'"
DataTables("数据字典").Load()

第二个似乎稍慢,不明显:

DataTables("数据字典").LoadOrder = "编号 Desc"
DataTables("数据字典").LoadTop = "1"
DataTables("数据字典").Load()

第三个慢的让人烦躁了:

Dim dr As DataRow = DataTables("数据字典").Find("编号 = max(编号)")
DataTables("数据字典").LoadFilter = "编号 = '" & dr("编号") & "'"
DataTables("数据字典").Load()

还是最后一个效率最高:
Dim ld As Long
Dim cmd As New SQLCommand
cmd.CommandText = "Select Max(编号) From {订单}"
ld = cmd.ExecuteScalar()


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/4/19 9:20:00 [显示全部帖子]

以下是引用muhua在2013-4-19 9:19:00的发言:

我也测试下。

数据量越大越明显。


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/4/19 9:41:00 [显示全部帖子]

以下是引用FoxMan在2013-4-19 9:31:00的发言:

可以考虑。


 回到顶部