首頁 > 資料庫 > mysql教程 > 如何在LINQ中根據特定欄位選擇不同的記錄?

如何在LINQ中根據特定欄位選擇不同的記錄?

Susan Sarandon
發布: 2025-01-03 06:40:38
原創
815 人瀏覽過

How to Select Distinct Records Based on a Specific Field in LINQ?

根據LINQ 中的單一欄位選擇不同記錄

在LINQ 中處理資料時,可能需要過濾掉重複記錄,確保僅傳回唯一值。但是,可能需要根據特定欄位或屬性執行此操作,而不是消除整個重複行。

基本不同查詢

以下LINQ 查詢示範了使用Distinct() 方法消除重複行的基本方法:

var query = (from r in table1
orderby r.Text
select r).Distinct();
登入後複製

此查詢檢索所有table1 中的行按文字欄位排序,然後從結果集中刪除所有重複項。

在特定欄位上不同

但是如果目標只是傳回怎麼辦特定欄位(例如文字)包含唯一值的行?要實現此目的,一個選項是使用GroupBy() 方法,然後使用Select() 方法:

table1.GroupBy(x => x.Text).Select(x => x.FirstOrDefault());
登入後複製

在此查詢中,table1 首先按文字欄位分組,為每個唯一的群組建立組文字值。然後,對於每個群組,使用 FirstOrDefault() 方法選擇第一行。結果是行的集合,其中文字欄位包含不同的值。

以上是如何在LINQ中根據特定欄位選擇不同的記錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板