最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#去除DataTable重復(fù)數(shù)據(jù)的三種方法

 更新時間:2021年02月26日 10:13:58   作者:無憂島主  
這篇文章主要介紹了C#去除DataTable重復(fù)數(shù)據(jù)的三種方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

業(yè)務(wù)需求

最近做一個把源數(shù)據(jù)庫的數(shù)據(jù)批次導(dǎo)出到目標(biāo)數(shù)據(jù)庫。源數(shù)據(jù)庫是采集程序采集而來的原始數(shù)據(jù)庫,所以需要對其進行一些處理(過濾一些為空,長度太短或太長,非法字符,重復(fù)數(shù)據(jù))然后在進行入庫。

其中要避免目標(biāo)庫插入重復(fù)數(shù)據(jù)。這重復(fù)數(shù)據(jù)可能是源數(shù)據(jù)庫本身就有重復(fù)數(shù)據(jù),還有就是已經(jīng)插入避免重復(fù)插入。

過濾自身重復(fù)數(shù)據(jù)解決方案

第一種:采用DataView.ToTable()方法

  • DataView.ToTable 方法
  • .NET Framework 2.0

其根據(jù)現(xiàn)有 DataView 中的行,創(chuàng)建并返回一個新的DataTable。

重載列表

名稱 說明
DataView.ToTable () 根據(jù)現(xiàn)有 DataView 中的行,創(chuàng)建并返回一個新的 DataTable。

由 .NET Compact Framework 支持。

DataView.ToTable (String) 根據(jù)現(xiàn)有 DataView 中的行,創(chuàng)建并返回一個新的 DataTable。

由 .NET Compact Framework 支持。

DataView.ToTable (Boolean, String[]) 根據(jù)現(xiàn)有 DataView 中的行,創(chuàng)建并返回一個新的 DataTable。

由 .NET Compact Framework 支持。

DataView.ToTable (String, Boolean, String[]) 根據(jù)現(xiàn)有 DataView 中的行,創(chuàng)建并返回一個新的 DataTable。

由 .NET Compact Framework 支持。

實例代碼

 public static DataTable Distinct(DataTable dt, string[] filedNames)
  {
   DataView dv = dt.DefaultView;
   DataTable DistTable = dv.ToTable("Dist", true, filedNames);
   return DistTable;
  }

第二種方法:循環(huán)遍歷+DataTable.Select()

利用for循環(huán)遍歷DataTable的數(shù)據(jù)行,利用DataTable.Select 方法判斷是否重復(fù),如果重復(fù),則利用DataTable.Rows.RemoveAt(Index)刪除重復(fù)的那一行。

具體看代碼。

代碼示例

 public DataTable GetDistinctSelf(DataTable SourceDt, string filedName)
  {
 for (int i = SourceDt.Rows.Count - 2; i > 0; i--)
   {
    DataRow[] rows = SourceDt.Select(string.Format("{0}='{1}'", filedName, SourceDt.Rows[i][filedName]));
    if (rows.Length > 1)
    {
     SourceDt.Rows.RemoveAt(i);
    }
   }
   return SourceDt;  
  }

第三種方法

利用雙循環(huán)遍歷(不推薦)

 public DataTable GetDistinctSelf(DataTable SourceDt, string filedName)
  {
   for (int i = SourceDt.Rows.Count - 2; i > 0; i--)
   {
    string title = SourceDt.Rows[0][filedName].ToString();
    for (int j = i + 1; j > 0; i--)
    {
     if (SourceDt.Rows[j][filedName].ToString() == title)
     {
      SourceDt.Rows.RemoveAt(i);

     }
    }

   }
   return SourceDt;
   }

到此這篇關(guān)于C#去除DataTable重復(fù)數(shù)據(jù)的三種方法的文章就介紹到這了,更多相關(guān)C#去除DataTable重復(fù)數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C#實現(xiàn)屬于自己的QQ截圖工具

    C#實現(xiàn)屬于自己的QQ截圖工具

    這篇文章主要為大家詳細介紹了C#實現(xiàn)屬于自己的QQ截圖工具的相關(guān)資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-04-04
  • c#通過反射實現(xiàn)對象自動映射的實現(xiàn)

    c#通過反射實現(xiàn)對象自動映射的實現(xiàn)

    本文主要介紹了c#通過反射完成對象自動映射的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • Unity實現(xiàn)3D貪吃蛇的移動代碼

    Unity實現(xiàn)3D貪吃蛇的移動代碼

    這篇文章主要為大家詳細介紹了Unity實現(xiàn)3D貪吃蛇的移動代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • 利用C#實現(xiàn)修改圖片透明度功能

    利用C#實現(xiàn)修改圖片透明度功能

    這篇文章主要為大家詳細介紹了如何利用C#實現(xiàn)修改圖片透明度功能,文中的示例代碼講解詳細,對我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以了解一下
    2022-12-12
  • C#多線程同步lock、Mutex的實現(xiàn)

    C#多線程同步lock、Mutex的實現(xiàn)

    本文主要介紹了C#多線程同步lock、Mutex的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • C#實現(xiàn)Word和ODT文檔相互轉(zhuǎn)換詳解

    C#實現(xiàn)Word和ODT文檔相互轉(zhuǎn)換詳解

    ODT文檔格式一種開放文檔格式(OpenDocument Text)。本文以C#及VB.NET代碼展示ODT和Word文檔之間相互轉(zhuǎn)換的方法,感興趣的可以學(xué)習(xí)一下
    2022-05-05
  • c# 中文轉(zhuǎn)拼音without CJK

    c# 中文轉(zhuǎn)拼音without CJK

    本文主要介紹了中文轉(zhuǎn)拼音without CJK,文章篇尾附上源碼下載。具有一定的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • C#實現(xiàn)簡易計算器功能(2)(窗體應(yīng)用)

    C#實現(xiàn)簡易計算器功能(2)(窗體應(yīng)用)

    這篇文章主要為大家詳細介紹了C#實現(xiàn)簡易計算器功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • C#自定義處理xml數(shù)據(jù)類實例

    C#自定義處理xml數(shù)據(jù)類實例

    這篇文章主要介紹了C#自定義處理xml數(shù)據(jù)類,涉及C#針對XML的打開、讀寫等常用操作,并將其封裝進一個類中以便于調(diào)用,非常具有實用價值,需要的朋友可以參考下
    2015-03-03
  • C# ManualResetEvent使用方法詳解

    C# ManualResetEvent使用方法詳解

    這篇文章主要為大家詳細介紹了ManualResetEvent使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05

最新評論

涞源县| 青岛市| 灌阳县| 邹平县| 蕲春县| 梧州市| 梅州市| 太谷县| 西宁市| 察哈| 台南县| 长岛县| 广汉市| 临汾市| 会泽县| 新源县| 东乡族自治县| 宁武县| 镇赉县| 安丘市| 黑水县| 仪陇县| 闻喜县| 华池县| 南平市| 洪泽县| 灵武市| 徐闻县| 周口市| 沙河市| 志丹县| 临汾市| 阳新县| 聂拉木县| 博客| 神池县| 通山县| 天柱县| 横峰县| 汝州市| 汤原县|