INTERSECT (Entity SQL)
INTERSECT オペランドの左右両方のクエリ式によって返される個別の値のコレクションを返します。すべての式は、expression と同じ型であるか、共通の基本型または派生型である必要があります。
expression INTERSECT expression
引数
- expression
コレクションを返す任意の有効なクエリ式。もう一方のクエリ式から返されたコレクションと比較されます。
戻り値
expression と同じ型であるか、共通の基本データ型または派生型であるコレクション。
解説
INTERSECT は、Entity SQL の集合演算子の 1 つです。Entity SQL のすべての集合演算子は左から右に評価されます。Entity SQL の集合演算子の優先順位に関する情報については、「EXCEPT (Entity SQL)」を参照してください。
例
次の Entity SQL クエリでは、INTERSECT 演算子を使用して、INTERSECT オペランドの左右両方のクエリ式によって返される個別の値のコレクションを返します。このクエリは、AdventureWorks Sales Model に基づいています。このクエリをコンパイルして実行するには、次の手順を実行します。
「StructuralType 結果を返すクエリの実行方法 (EntityClient)」の手順に従います。
次のクエリを引数として
ExecuteStructuralTypeQuery
メソッドに渡します。
(SELECT product from AdventureWorksEntities.Product as product where ....product.ListPrice > 10 )
intersect (select product from AdventureWorksEntities.Product as
product where product.ListPrice > 20)
この例では次の出力が生成されます。
ProductID: 514
Name: LL Mountain Seat Assembly
ProductNumber: SA-M198
MakeFlag: True
ProductID: 515
Name: ML Mountain Seat Assembly
ProductNumber: SA-M237
MakeFlag: True
ProductID: 516
Name: HL Mountain Seat Assembly
ProductNumber: SA-M687
MakeFlag: True
ProductID: 517
Name: LL Road Seat Assembly
ProductNumber: SA-R127
MakeFlag: True
ProductID: 518
Name: ML Road Seat Assembly
ProductNumber: SA-R430
MakeFlag: True
...