日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

获取DataTable字段唯一值(DISTINCT)

發布時間:2023/12/9 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 获取DataTable字段唯一值(DISTINCT) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?? ? ? ?///?<summary>
????????
///?將所選字段的唯一值復制到一個新的?DataTable。?
????????
///?<para>如果字段包含?NULL?值,目標表中的記錄還包含?NULL?值</para>
????????
///?</summary>
????????
///?<param?name="sourceTable">源數據表</param>
????????
///?<param?name="filterExpression">檢索條件</param>
????????
///?<param?name="fieldName">唯一值的字段名</param>
????????
///?<returns></returns>?
????????public?DataTable?SelectDistinct(DataTable?sourceTable,?string?filterExpression,?string?fieldName)
????????{
????????????DataTable?dt?
=?new?DataTable(sourceTable.TableName);
????????????dt.Columns.Add(fieldName,?sourceTable.Columns[fieldName].DataType);

????????????
object?lastValue?=?null;
????????????
foreach?(DataRow?dr?in?sourceTable.Select(filterExpression,?fieldName))
????????????{
????????????????
if?(lastValue?==?null?||?!(ColumnEqual(lastValue,?dr[fieldName])))
????????????????{
????????????????????lastValue?
=?dr[fieldName];
????????????????????dt.Rows.Add(
new?object[]?{?lastValue?});
????????????????}
????????????}
????????????
return?dt;
????????}
????????
private?bool?ColumnEqual(object?A,?object?B)
????????{
????????????
if?(A?==?DBNull.Value?&&?B?==?DBNull.Value)
????????????????
return?true;
????????????
if?(A?==?DBNull.Value?||?B?==?DBNull.Value)
????????????????
return?false;
????????????
return?(A.Equals(B));
????????}?

?

轉載于:https://www.cnblogs.com/EasyData/archive/2010/01/20/1652173.html

總結

以上是生活随笔為你收集整理的获取DataTable字段唯一值(DISTINCT)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。