c# DataView.ToTable()方法 去除表的重復(fù)項問題
c# DataView.ToTable()方法 去除表的重復(fù)項
DataView.ToTable()方法及其重載:
1.DataView.ToTable()
根據(jù)現(xiàn)有DataView中的行,創(chuàng)建并返回一個新的DataTable。
2.DataView.ToTable(String)
根據(jù)現(xiàn)有DataView中的行,創(chuàng)建并返回一個新的DataTable。參數(shù)String為返回的DataTable的名稱,輸出的表與輸入表的列相通,不可自定義。
3.DataView.ToTable(Boolean,String[])
根據(jù)現(xiàn)有DataView中的行,創(chuàng)建并返回一個新的DataTable。參數(shù)Boolean如果為true,則說有列都具有不同值的行,為false時不去沖,且默認為false。
可自定義返回的列,數(shù)組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[])
根據(jù)現(xiàn)有DataView中的行,創(chuàng)建并返回一個新的DataTable。比3多一個參數(shù),可以定義返回表的名稱。
C# DataTable合并以及去除重復(fù)數(shù)據(jù)
代碼如下:
合并
/// <summary>
/// 合并表結(jié)構(gòu)相同datatable數(shù)據(jù)
/// </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;
}剔除重復(fù)數(shù)據(jù)
?? ?/// <summary>
?? ?/// 去除datatable重復(fù)數(shù)據(jù)
?? ?/// </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.ToTable(true, datarow); //對表所有字段進行過濾,true表示使用distinct方法
?? ? return ?distinctdata;
}總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
C#自動類型轉(zhuǎn)換與強制類型轉(zhuǎn)換的講解
今天小編就為大家分享一篇關(guān)于C#自動類型轉(zhuǎn)換與強制類型轉(zhuǎn)換的講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01
C#使用HttpClient進行Post請求出現(xiàn)超時問題的解決及優(yōu)化
最近我的控制臺程序發(fā)現(xiàn)有時候總是出現(xiàn)請求超時等問題,通常好幾分鐘最多只有3-4個請求,在使用apipost發(fā)現(xiàn)并發(fā)10個5分鐘也沒有問題,那么問題就出在我的請求端了,所以本文給大家介紹了C# 使用HttpClient進行Post請求總是出現(xiàn)超時問題的優(yōu)化,需要的朋友可以參考下2025-01-01
C#使用WebSocket與網(wǎng)頁實時通信的實現(xiàn)示例
本文主要介紹了C#使用WebSocket與網(wǎng)頁實時通信的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08

