UNION (Entity SQL)

複数のクエリの結果を 1 つのコレクションに結合します。

expression
UNION [ ALL ]
expression

引数

  • expression
    コレクションと結合するコレクションを返す任意の有効なクエリ式。すべての式は、expression と同じ型であるか、共通の基本データ型または派生型である必要があります。
  • UNION
    複数のコレクションを結合し、1 つのコレクションとして返すことを指定します。
  • ALL
    複数のコレクションを結合し、重複も含めて 1 つのコレクションとして返すことを指定します。指定しない場合、重複は結果コレクションから削除されます。

戻り値

expression と同じ型であるか、共通の基本データ型または派生型であるコレクション。

解説

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

次の Entity SQL クエリでは、UNION ALL 演算子を使用して、2 つのクエリの結果を 1 つのコレクションに結合します。このクエリは、AdventureWorks Sales Model に基づいています。このクエリをコンパイルして実行するには、次の手順を実行します。

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

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

(select VALUE P from AdventureWorksEntities.Product 
    as P WHERE P.Name LIKE 'C%') Union All 
    ( select VALUE A from AdventureWorksEntities.Product 
    as A where A.ListPrice > 20)

出力を次に示します。

ProductID: 320
Name: Chainring Bolts
ProductNumber: CB-2903
MakeFlag: False
ProductID: 321
Name: Chainring Nut
ProductNumber: CN-6137
MakeFlag: False
ProductID: 322
Name: Chainring
ProductNumber: CR-7833
MakeFlag: False
ProductID: 323
Name: Crown Race
ProductNumber: CR-9981
MakeFlag: False
ProductID: 324
Name: Chain Stays
ProductNumber: CS-2812
MakeFlag: True
...

参照

概念

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