开发者

c# DataView.ToTable()方法 去除表的重复项问题

开发者 https://www.devze.com 2022-12-03 10:29 出处:网络 作者: 焦玉丽
目录C# DataView.ToTable()方法 去除表的重复项1.DataView.ToTable()2.DataView.ToTable(String)3.DataView.ToTable(Boolean,String[])4.DataView.ToTable(String,Boolean,String[])C# DataTable合并以及去除重复数据
目录
  • C# DataView.ToTable()方法 去除表的重复项
    • 1.DataView.ToTable()
    • 2.DataView.ToTable(String)
    • 3.DataView.ToTable(Boolean,String[])
    • 4.DataView.ToTable(String,Boolean,String[])
  • C# DataTable合并以及去除重复数据
    • 合并
    • 剔除重复数据
  • 总结

    c# DataView.ToTable()方法 去除表的重复项

    DataView.ToTable()方法及其重载:

    1.DatajsView.ToTable()

    根据现有DataView中的行,创建并返回一个新的DataTable。

    2.DataView.ToTable(String)

    根据现有DataView中的行,创建并返回一个新的DataTable。参数String为返回的DataTable的名称,输出的表与输入表的列相通,不可自定义。

    3.DataView.ToTable(Boolean,String[])

    根据现有DataView编程客栈中的行,创建并返回一个新的DatjsaTable。参数Boolean如果为true,则说有列都具有不同值的行,为false时不去冲,且默认为false。

    可自定义返回的列,数组String[]为显示返回列的集合。

    例子:

    DataView dv = new DataView(table);
    table = dv.ToTable(true, "ID");       //去重,返回原表中的ID列
    
    //table=dv.ToTable(true,"ID","name");  //返回ID 和 name两列

    4.DataView.ToTable(String,Boolean,String[])

    根据现有DataView中的行,创建并返回一个新的DataTable。比3多一个参数,可以定义返回表的名称。

    C# DataTable合并以及去除重复数据

    代码如下:

    合并

    /// <summary>
    /// 合并表结构相同datatable数据
    /// </summary>
    public DataTable Mergedata(){
    DataTable data = new DataTable();
    DataTable deptdata = new DataTable();
    
    data=DBHelper.FillDataTable("select * from T1", null);
    deptdata=DBHelper.FillDataTable("select * from T2", null);
    
    data.Merge(deptdata, true);
    return data;
    }

    剔除重复数据

     /// <summary>
     /// 去除datatable重复数据
     /// </summary>
     public DataTable distinctdata()
     {
      DataTable data = new DataTable();
      DataTable distinctdata = new DataTable();
    
      List<string> datarowlist = new List<string>();
       string[] datarow;
      
      foreach (DataColumn row in data.Columns) //遍历出表头
       {
       datarowlist.Add(row.ToString());
       }
      datarow = datarowlist.ToArray(编程客栈);
      
      DataView dv = new DataView(data);    
      distinctdata = dv.ToTablandroide(true, datarow); //对表所有字段进行过滤,true表示使用distinct方法
      开发者_C培训return distinctdata;
    }

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    关注公众号