join-on-equals-into
句の左の外部接続を実行できます。
左の外部接続のソリューションDefaultIfEmpty()
join-on-equals-into
説明
接続条件が一致しない場合は、接続されているコレクションタイプのデフォルト値を返します(この例ではWhere
)。これにより、右のテーブルに右のテーブル()のすべての線が含まれている場合があります。
<code class="language-csharp">List<joinpair> leftFinal = (from l in lefts join r in rights on l.Key equals r.Key into temp from r in temp.DefaultIfEmpty() select new JoinPair { LeftId = l.Id, RightId = r == null ? 0 : r.Id });</code>例
内部接続用に提供されるコードを考慮してください:
左の外部接続を実現するには、DefaultIfEmpty()
条項を次のものに置き換えてください。
JoinPair
lefts
この変更により、左側のすべての線が結果に含まれていることを保証します。たとえば、右に一致していない線を含みますrights
。
以上が「Join-On-Equals-Into`条項なしでLinqで左外の結合を実行する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。