Foxtable(狐表)用户栏目专家坐堂 → 高难度,从表A提取数据到表C中??


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

主题:高难度,从表A提取数据到表C中??

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


加好友 发短信
等级:婴狐 帖子:26 积分:288 威望:0 精华:0 注册:2018/1/19 15:29:00
高难度,从表A提取数据到表C中??  发帖心情 Post By:2018/3/6 15:47:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1520322159(1)_副本.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:1520322177(1)_副本.png
图片点击可在新窗口打开查看

从表A提取数据到表C中??


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/3/6 16:01:00 [只看该作者]

Dim Cols1() As String = {"第一列","第三列","第四列"}
Dim Cols2() As String = {"第一列","第四列","第五列"}
For Each dr1 As DataRow In DataTables("表A").Select("第一列 is not null")
    Dim dr2 As DataRow = DataTables("表B").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = dr1(Cols1(i))
    Next
    Dim str = dr1("第二列")
    Dim ary() = str.replace(chr(10),"").split(chr(13))
    dr2("第二列") = ary(0).split(":")(1)
    dr2("第三列") = ary(1).split(":")(1)
    dr2("第四列") = ary(2).split(":")(1)
Next

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


加好友 发短信
等级:婴狐 帖子:26 积分:288 威望:0 精华:0 注册:2018/1/19 15:29:00
  发帖心情 Post By:2018/3/6 16:58:00 [只看该作者]

Dim Cols1() As String = {"第一列","第三列","第四列"}
Dim Cols2() As String = {"第一列","第四列","第五列"}
For Each dr1 As DataRow In DataTables("表A").Select("第一列 is not null")
    Dim dr2 As DataRow = DataTables("表B").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = dr1(Cols1(i))
    Next
    Dim str = dr1("第二列")
    Dim ary() = str.replace(chr(10),"").split(chr(13))
    dr2("第二列") = ary(0).split(":")(1)
    dr2("第三列") = ary(1).split(":")(1)
    dr2("第四列") = ary(2).split(":")(1)
Next
 

已经可以实现了

 

只是再运行一遍时,还是会把之前运行过的再重新重复提取,这个如何改掉

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/3/6 17:27:00 [只看该作者]

Dim Cols1() As String = {"第一列","第三列","第四列","_Identify"}
Dim Cols2() As String = {"第一列","第四列","第五列", "第十列"}
For Each dr1 As DataRow In DataTables("表A").Select("第一列 is not null")
    Dim dr2 As DataRow = DataTables("表B").find("第十列 = '" & dr1("_Identify") & "'")
    If dr2 Is Nothing
        dr2 = DataTables("表B").AddNew()
    End If
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = dr1(Cols1(i))
    Next
    Dim str = dr1("第二列")
    Dim ary() = str.replace(chr(10),"").split(chr(13))
    dr2("第二列") = ary(0).split(":")(1)
    dr2("第三列") = ary(1).split(":")(1)
    dr2("第四列") = ary(2).split(":")(1)
Next

 回到顶部