日期:2014-05-17  浏览次数:20861 次

过滤table重复数据
本帖最后由 xiongxing318 于 2013-10-09 15:45:21 编辑
现有表A数据量大概2W左右,是从execl里面导入进来的。表B是从表A  Copy来的。
A: 手机号码               发送内容    Index    错误信息    
     13800000001         200       1
    13800000002         200       2
    13800000002         15        3
    13800000003         220       4
        .                .
        .                .
    13800019999         550      19999  

想要的结果:我要把手机号码重复的数据在表A里面移除掉,并且根据Index在B表里面指定行的错误信息的列填上备注表示该行是重复的。

ps:下面是我的代码
 for (int i = dt.Rows.Count - 1; i > -1; i--)
        {
            bool bo = false;
            DataRow row;
            try
            {
                row = dt.Rows[i];
            }
            catch (Exception)
            {
                continue;
            }
            for (int j = i - 1; j > -1; j--)
            {
                DataRow row2 = dt.Rows[j];
                if (row[0].ToString() == row2[0].ToString())//若该字段相同,则存在重复,将重复行号,手机号码加入dupList
                {
                    bo = true;
                    failureCount++;
                    errdt.Select("Index='" + row2["Index"].ToString() + "'")[0]["错误信息"] = "重复(手机号码为" + row2["手机号码"].ToString() + "的所有短信不会发送!)";