Foxtable(狐表)用户栏目专家坐堂 → 如何删除重复行


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

主题:如何删除重复行

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


加好友 发短信
等级:小狐 帖子:350 积分:3412 威望:0 精华:0 注册:2015/5/12 15:33:00
如何删除重复行  发帖心情 Post By:2016/7/11 11:15:00 [只看该作者]

在导入数据后,发现有很多数据行是重复的,现要根据其中的某个字段来判断,如果这个字段是重复,就删除其他行,只保留一行。如何写代码?例如表A,以第一列为判断,该如何写代码?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.table


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/11 11:33:00 [只看该作者]

 

Dim idx As String = "-1,"
Dim idx_temp As String = ""
Dim pdr As DataRow = Nothing
Dim count As Integer = 0
Dim cs As String = "第一列"
For Each dr As DataRow In DataTables("表A").Select("", cs)
   
    Dim flag As Boolean = False
    If pdr IsNot Nothing Then
        For Each c As String In cs.split(",")
            If pdr(c) <> dr(c) Then
                flag = True
                Exit For
            End If
        Next
       
        If flag Then
            If count > 1 Then
                idx &= idx_temp
            End If
            count = 1
            idx_temp = ""
        Else
            count += 1
            idx_temp &= dr("_Identify") & ","
        End If
    End If
   
    pdr = dr
Next

If count > 1 Then
    idx &= idx_temp
End If

'Tables("表A").filter = "_Identify not in (" & idx.trim(",") & ")"

DataTables("表A").DeleteFor("_Identify In (" & idx.trim(",") & ")")


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


加好友 发短信
等级:小狐 帖子:350 积分:3412 威望:0 精华:0 注册:2015/5/12 15:33:00
  发帖心情 Post By:2016/7/11 11:44:00 [只看该作者]

有点看花眼,好好学习,谢谢大红袍,不知你是怎样炼成的

 回到顶部