SQL "IN" ステートメントの Linq 変換
データ操作の分野では、SQL "IN" ステートメントは強力なツールです。行を特定の値のリストと照合します。この機能は、「Contains」メソッドを使用して LINQ (統合言語クエリ) にシームレスに変換できます。
「Items」、「Tags」、「TagMap」の 3 つのテーブルで構成されるスキーマの例を考えてみましょう。 TagId のリストがあり、一致する「Items」を取得したいとします。 SQL では、次のような "IN" ステートメントを使用できます。
SELECT * FROM Items WHERE TagId IN (2,3,4,7)
LINQ を使用して同じ結果を得るには、次のクエリを使用できます。
var TagIds = new int[] {2,3,4,7}; var query = from tagMap in Context.TagMaps where TagIds.Contains(tagMap.TagId) select tagMap.Items;
This LINQクエリは効果的に「IN (2,3,4,7)」句を生成します。 「Contains」メソッドは、指定された TagId が提供されたリストに存在するかどうかを確認し、それに応じて行をフィルタリングします。
結果のクエリは、指定された TagId リストに一致する目的の「Items」を取得します。これは、複雑なデータ取得操作を簡潔かつ効率的な方法で実行する LINQ の能力を示しています。
以上がLINQ は SQL の 'IN' ステートメントをどのように変換しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。