ホームページ > データベース > mysql チュートリアル > LINQ の特定のフィールドに基づいて個別のレコードを選択する方法

LINQ の特定のフィールドに基づいて個別のレコードを選択する方法

Susan Sarandon
リリース: 2025-01-03 06:40:38
オリジナル
797 人が閲覧しました

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 のすべての行をテキスト フィールドで並べ替え、結果のセットから重複を削除します。

特定のフィールドで区別

しかし、目的が返すことである場合はどうなるでしょうか。 Text などの特定のフィールドに一意の値が含まれる行だけを指定しますか?これを実現するには、GroupBy() メソッドの後に Select() メソッドを使用することが 1 つのオプションです。

table1.GroupBy(x => x.Text).Select(x => x.FirstOrDefault());
ログイン後にコピー

このクエリでは、最初に table1 が Text フィールドによってグループ化され、一意のフィールドごとにグループが作成されます。テキスト値。次に、グループごとに、FirstOrDefault() メソッドを使用して最初の行を選択します。結果は、テキスト フィールドに個別の値が含まれる行のコレクションです。

以上がLINQ の特定のフィールドに基づいて個別のレコードを選択する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート