Foxtable(狐表)用户栏目专家坐堂 → 两个表对比,查找并删除没有的行


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

主题:两个表对比,查找并删除没有的行

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/15 17:27:00 [显示全部帖子]

既然都没有了,也就是不存在,还删除什么?

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/15 20:06:00 [显示全部帖子]

DataTables("表B").sqlDeleteFor("spdm+GG1DM+MDDM not in (select SPDM+GG1DM+CKDM from {表A})")

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/15 21:02:00 [显示全部帖子]

如果不是SqlServer,只能这样

Dim dr As DataRow
For i As Integer = DataTables("表B").DataRows.Count - 1 To 0 Step -1
    dr = DataTables("表B").DataRows(i)
    If DataTables("表A").Find("spdm='" & dr("SPDM") & "' and GG1DM='" & dr("GG1DM") & "' and CKDM='" & dr("MDDM") & "'") Is Nothing Then
        dr.Delete
    End If
Next

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/15 21:39:00 [显示全部帖子]

定义了重复的变量名dr

[此贴子已经被作者于2020/6/15 21:39:04编辑过]

 回到顶部