次の方法で共有


OVERLAPS (Entity SQL)

2 つのコレクションに共通の要素が存在するかどうかを調べます。

expression OVERLAPS expression

引数

  • expression
    コレクションを返す任意の有効なクエリ式。もう一方のクエリ式から返されたコレクションと比較されます。すべての式は、expression と同じ型であるか、共通の基本型または派生型である必要があります。

戻り値

2 つのコレクションに共通の要素がある場合は true、それ以外の場合は false

解説

OVERLAPS の機能は、 次の式と等価です。

EXISTS ( expression INTERSECT expression )

OVERLAPS は、Entity SQL の集合演算子の 1 つです。Entity SQL のすべての集合演算子は左から右に評価されます。Entity SQL の集合演算子の優先順位に関する情報については、「EXCEPT (Entity SQL)」を参照してください。

次の Entity SQL クエリでは、OVERLAPS 演算子を使用して、2 つのコレクションに共通の値が存在するかどうかを調べます。このクエリは、AdventureWorks Sales Model に基づいています。これをコンパイルして実行するには、次の手順を実行します。

  1. StructuralType 結果を返すクエリの実行方法 (EntityClient)」の手順に従います。

  2. 次のクエリを引数として ExecuteStructuralTypeQuery メソッドに渡します。

SELECT value P from AdventureWorksEntities.Product 
    as P where ((select P from AdventureWorksEntities.Product 
    as P where P.ListPrice > 13) overlaps (select P from
    AdventureWorksEntities.Product as P where P.ListPrice < 20))

出力を次に示します。

ProductID: 1
Name: Adjustable Race
ProductNumber: AR-5381
MakeFlag: False
ProductID: 2
Name: Bearing Ball
ProductNumber: BA-8327
MakeFlag: False
ProductID: 3
Name: BB Ball Bearing
ProductNumber: BE-2349
MakeFlag: True
ProductID: 4
Name: Headset Ball Bearings
ProductNumber: BE-2908
MakeFlag: False
ProductID: 316
Name: Blade
ProductNumber: BL-2036
MakeFlag: True
...

参照

概念

集合演算子 (Entity SQL)
Entity SQL リファレンス